gpt4 book ai didi

Python 可选参数对

转载 作者:行者123 更新时间:2023-12-04 10:39:16 26 4
gpt4 key购买 nike

我正在使用 argparse模块获取两个可选的命令行参数:

parser.add_argument('start_date', nargs='?', metavar='START DATE',
help='start date in YYYY-MM-DD')
parser.add_argument('end_date', nargs='?', metavar='END DATE',
help='end date in YYYY-MM-DD')

这使
> python test_arg.py -h
usage: test_arg.py [-h] [START DATE] [END DATE]

但是,我希望将一对可选参数( START DATEEND DATE )(如果提供的话)一起提供。沿着这条线的东西:
usage: test_arg.py [-h] [START_DATE END_DATE]
argparse 有可能吗? ?

最佳答案

我能想到的最接近的是:

parser=argparse.ArgumentParser()
parser.add_argument('--dates', nargs=2, metavar=('START DATE','END_DATE'),
help='start date and end date in YYYY-MM-DD')
print(parser.format_help())

产生
usage: stock19805170.py [-h] [--dates START DATE END_DATE]

optional arguments:
-h, --help show this help message and exit
--dates START DATE END_DATE
start date and end date in YYYY-MM-DD

无法指定 - 'require these 2 arguments together' . nargs=2指定 2 个参数,但不使其成为可选参数(已提出 nargs=[0,2] 形式,但未包含在任何发行版中)。所以 --dates需要使它成为可选的。为了产生这个帮助,元变量必须是一个元组(用一个列表试试看我的意思)。那 tuple metavar仅适用于 optionals (不是位置)。

关于Python 可选参数对,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19805170/

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