以下3种方式使用我的Python程序是有效的:
$ python prog.py # 1
$ python prog.py -d # 2
$ python prog.py -d FILE # 3
每个人都做不同的事情。 (1)根本不会将东西转储到文件中。 (2)将其转储到dump.log
。 (3)将其转储到FILE
。
在我调用parse_args()
之后,我不确定如何区分(1)和(2)。这是我的代码:
parser = ArgumentParser()
parser.add_argument(
'-t', '--tag-dump',
metavar='FILE',
help="dump enriched tags to FILE (default: dump.log)",
action='store',
nargs='?',
dest='etags_filename',
default='dump.log'
)
args = parser.parse_args()
我现在该怎么办?
答案 0 :(得分:0)
您只需要向parser.add_argument()
提供const
参数。如果使用该选项而未在命令行上指定值,则指定将填充的值。然后,您可以测试args.etags_filename
是const
值(案例2)还是default
值'dump.log'
(案例1)。