【问题标题】:Python - check if arg from arparse was chosenPython - 检查是否选择了来自 arparse 的 arg
【发布时间】:2017-08-21 09:23:54
【问题描述】:

我想检查是否选择了来自 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调用我的程序时,它也会选择随机值。如何检查是否选择了参数?

【问题讨论】:

    标签: python arguments argparse


    【解决方案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)
    

    【讨论】:

    • args.tempo is None 是最可靠的测试。
    猜你喜欢
    • 1970-01-01
    • 2012-01-07
    • 1970-01-01
    • 2014-03-28
    • 2012-12-28
    • 2021-07-10
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    相关资源
    最近更新 更多