You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何对input函数接收的输入内容执行arg-parsing参数解析

Python解析input输入的命令行格式参数方案

方法1:使用标准库argparse(最推荐,支持复杂参数规则)

argparse是Python原生的参数解析库,本来用于解析系统传入的命令行参数,我们只需要把input获取的参数字符串拆分后传入解析器即可,兼容带引号、参数含空格等特殊场景:

import argparse
import shlex

a = input('enter something here: ')
# 用shlex.split拆分参数,可正确识别引号包裹的带空格参数,比普通str.split更稳妥
args_list = shlex.split(a)

# 配置参数规则
parser = argparse.ArgumentParser()
parser.add_argument('--url', required=True, help='目标URL地址')
parser.add_argument('--data', required=True, help='请求携带的数据')

# 解析并读取参数
args = parser.parse_args(args_list)
print(args.url) # 输出 example.com
print(args.data) # 输出 some_data_here

方法2:简单场景手动解析(无需导入额外模块)

如果参数规则非常简单,没有复杂的特殊格式,也可以手动拆分处理:

a = input('enter something here: ')
parts = a.split()
arg_map = {}

for idx in range(len(parts)):
    if parts[idx].startswith('--'):
        if idx + 1 < len(parts):
            arg_key = parts[idx].lstrip('--')
            arg_map[arg_key] = parts[idx + 1]

print(arg_map.get('url'))
print(arg_map.get('data'))

注意事项

  • 手动解析仅适合参数值不含空格的场景,如有带空格的参数值需要用引号包裹的需求,请优先使用第一种方案
  • argparse还支持配置参数类型、默认值、可选参数、枚举值等规则,可适配绝大多数参数解析需求

内容的提问来源于stack exchange,提问作者Jack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 21:36:03