gpt4 book ai didi

python - 在 Python 中使命令行参数可选

转载 作者:行者123 更新时间:2023-12-02 04:29:41 25 4
gpt4 key购买 nike

我正在使用 ArgParse 在 Python 中提供命令行参数。

import argparse
parser = argparse.ArgumentParser()
parser.add_argument("--quality", help="enter some quality limit")
args = parser.parse_args()
print "You gave quality = %s" % str(args.quality)

我将其保存为 a.py然后运行这个:

$ python a.py --quality 10
You gave quality = 10

即使未提供命令行参数,我也希望我的代码能够运行。我想将其设为可选。如果提供了它,则它需要一个可以进一步使用的特定值。

我的代码中有这样的内容:

 if int(quality)==10:

所以如果我在没有参数的情况下运行:

 $ python a.py

我收到此错误:

类型错误:int() 参数必须是字符串或数字,而不是“NoneType”

最佳答案

我想你想要:

parser.add_argument("--quality", 
type=int,
default=10,
help="enter some quality limit")

将类型指定为 int 并指定您想要的默认值。您遇到的问题是因为您没有为参数指定默认值(通过 default 关键字参数),因此如果未在命令行上指定,则默认为 None ,其中 int(quality) 令人窒息。将上面的 type 设置为 int 可以避免进行 int() 强制转换。

关于python - 在 Python 中使命令行参数可选,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24191695/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com