gpt4 book ai didi

python - argparse 更新参数的选择

转载 作者:行者123 更新时间:2023-12-01 01:23:57 36 4
gpt4 key购买 nike

使用argparse,有没有办法在将参数添加到解析器后更新参数的“choices”选项? Argparse documentation对于更新选择并没有产生太多作用

import argparse

parser = argparse.ArgumentParser()

choices_list = ['A', 'B']
parser.add_argument('arg1', choices=choices_list)

# The list of choices now changes
choices_list = ['A', 'C', 'D']

# Some code to update 'arg1' choices option ?
parser.???

我尝试将“parser.add_argument”与新的“choices_list”一起使用,但它会创建重复的参数。

使用Python 3.7

最佳答案

参数本身有一个 choices 属性,但如果您保存对参数的引用而不是尝试从解析器本身检索它,这是最简单的。 (否则,您必须扫描私有(private)属性 parser._actions 并尝试确定您需要哪一个。)

import argparse

parser = argparse.ArgumentParser()

choices_list = ['A', 'B']
arg1 = parser.add_argument('arg1', choices=choices_list)

arg1.choices = ['A', 'B', 'D']

关于python - argparse 更新参数的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53524040/

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