Python - 检查是否选择了arparse中的arg

时间:2017-03-28 10:34:55

标签: python arguments argparse

我想检查是否选择了argsparse中的参数,如果不是,我想为该变量选择随机值。

以下是示例:

parser.add_argument('--tempo', default=120, type=int, help='Tempo of the track')

并且一种方法是例如:

args = parser.parse_args()    
if args.tempo==120: #my default int
    tempo=random.randint(60,350)

但是当用户想要使用例如main.py --tempo 120来调用我的程序时,它也会选择随机值。如何检查参数是否被选中?

1 个答案:

答案 0 :(得分:1)

问题出在测试中。 如果用户选择120,那么它将给出一个随机数。 我认为最好删除默认值并检查它是否为空。

parser.add_argument('--tempo', default=None, type=int, help='Tempo of the track')
args = parser.parse_args()    
if args.tempo==None: #my default int
    args.tempo=randint(60,350)