【发布时间】:2015-07-14 10:49:18
【问题描述】:
我有一个 python 程序,我正在尝试添加一个可选参数。
如果用户没有输入任何内容,那么我希望该值默认为 20。但是,如果他们确实输入了值,我将使用他们的值。我这样写到程序中:
optionParse= argparse.ArgumentParser(description='Change Number of Locations')
optionParse.add_argument('-n', dest='userDefSize')
args=optionParse.parse_args()
if args.n:
sizeOfList=args.userDefSize
else:
sizeOfList=20
但由于某种原因,它一直在说:
AttributeError: 'Namespace' object has no attribute 'n'
这里有什么问题?我的 if 语句写错了吗?
【问题讨论】:
-
说真的,你愿意RTFM吗?它解释了如何为参数设置默认值,而无需进行后期处理。另外,请注意您明确指定
destination 为userDefSize,不是n,您应该通过identityNone /i>,不是真实性。