我有一些旧代码,其中optparse作为其参数库。它有一个类型作为参数之一
type = "choice"
我正在尝试将我的代码转换为argparse。我该怎么把这个类型?如果我添加type = choice,则会抛出错误:
NameError: global name 'choice' is not defined
如果我使用argparse,这里的类型值应该是什么?
答案 0 :(得分:2)
在optparse
中,choice
类型只是string
的一种特殊形式。来自optparse
documenattion:
"choice"
个选项是"string"
个选项的子类型。choices
选项属性(字符串序列)定义了允许的选项参数集。
您无需在argparse
中将其指定为类型;您需要提供的只是选择。完全删除type
参数,或者如果您想要明确,请将其设置为str
。
另请参阅argparse
optparse
;这比{{1}}更灵活,因为这也允许选择不是字符串的类型。