是否可以执行: test_argparse.py c:\ folder \ somefile.txt 并获取
打印结果:命名空间(filepath ='c:\\ folder \\ somefile.txt')
添加 -filepath 并不是什么大问题,但只是想知道是否有某种方法可以跳过它,如果你只需要传入一个文件路径。
filename: test_argparse.py
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-filepath', metavar='in-file')
results = parser.parse_args()
print results
执行: test_argparse.py -filepath c:\ folder \ somefile.txt
打印结果:命名空间(filepath ='c:\\ folder \\ somefile.txt')
答案 0 :(得分:1)
我想你想要一个positional
参数。您可以指定参数名称,在本例中为filepath
,但不包含任何前缀( - )。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('filepath', metavar='in-file')
results = parser.parse_args('test'.split())
# Namespace(filepath='test')
results = parser.parse_args()
print results