gpt4 book ai didi

python - 将单位添加到 argparse

转载 作者:太空宇宙 更新时间:2023-11-03 18:44:46 25 4
gpt4 key购买 nike

目前我已经

parser = argparse.ArgumentParser(formatter_class=argparse.ArgumentDefaultsHelpFormatter)
group = parser.add_argument_group("Calibration Options")
group.add_argument('-c', '--calibration', default=False, action="store_true", help="Calibrate Gear", dest="calibrate")
group.add_argument('--startFreq', default=400, type=int, help="Start Frequency [MHz]", dest="calStart")

这会产生这个输出

Calibration Options:
-c, --calibration Calibrate Gear (default: False)
--startFreq Start Frequency (MHz) (default: 400)

这没问题,但我希望“单位”包含在默认值中,例如..

Calibration Options:
-c, --calibration Calibrate Gear (default: False)
--startFreq Start Frequency (default: 400 MHz)

有什么办法可以这样做或者有什么理由我不应该这样做吗?

最佳答案

在帮助行中输入您自己的%(default)s。专门的格式化程序所做的就是将该字符串添加到帮助中。

group.add_argument('--startFreq', default=400, type=int, help="Start Frequency (default: %(default)s MHz)", dest="calStart")

我还会使用:

`group.add_argument('-c', '--calibration', action="store_true", help="Calibrate Gear (default: False)", dest="calibrate")

store_true 的内置默认值是 False,但 %(default)s 不会捕获该值。

argparse.ArgumentDefaultsHelpFormatter 是一个方便的工具。在 help 字符串中,它所做的一切都是您不能做的。当默认值可能是一个变量(在定义参数及其 help 参数时未知的变量)时,%(default)s 最有用。

关于python - 将单位添加到 argparse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19763059/

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