我刚开始使用python3,我使用argparse lib从控制台输入解析参数列表。我在python页面上学过手册并且很遗憾地搜索了我没有找到正确的答案:
如何正确解析一个参数,该参数的自愿部分由其他字符分隔,然后是空格。让我解释一下例子:
- argument = file.txt (=后没有空格) 我想知道争论何时被使用,以及他的'file.txt'部分(可以改变)。是否有某种形式的替代自愿部分?
parser.add_argument(' - argument = *',action = ...)#or so ..
- 由于
P.S。可悲的是,替代空间不是一种选择。
答案 0 :(得分:1)
argparse
处理=
加入标志和参数:
parser.add_argument('--argument',help='your help line here')
这将接受。
'--argument=file.txt'
'--argument file.txt'
默认值是期望一个值nargs=None
。如果没有给出默认值None
。
见
16.4.4.1
For long options (options with names longer than a single character), the option and
value can also be passed as a single command-line argument, using = to separate them:
>>> parser.parse_args('--foo=FOO'.split())
Namespace(foo='FOO', x=None)
如果没有--
,则参数为positional
parser.add_argument('argument',help='your help line here')
我假设自愿'你的意思是'可选' (如文档中所使用的)。但现在是必需的。也就是说,如果您没有提供文件名,则会收到错误。