我有这样的解析器
parser = argparse.ArgumentParser()
parser.add_argument('--template', metavar='FILE', nargs=1, required=True)
Run Code Online (Sandbox Code Playgroud)
并传递这样的参数
myprog --template template.txt
Run Code Online (Sandbox Code Playgroud)
但是当我后来检查args从中获得的时候args = parser.parse_args()我会得到
['template.txt']
Run Code Online (Sandbox Code Playgroud)
我可以换平原'template.txt'吗?谢谢.
nargs如果您不希望它成为列表,请不要使用:
parser.add_argument('--template', metavar='FILE', required=True)
Run Code Online (Sandbox Code Playgroud)
请注意,
nargs=1生成一个项目的列表.这与默认情况不同,默认情况下,项目由其自身生成.
和
如果未提供nargs关键字参数,则消耗的参数数由操作确定.通常,这意味着将使用单个命令行参数,并且将生成单个项(不是列表).
| 归档时间: |
|
| 查看次数: |
201 次 |
| 最近记录: |