我正在使用 Python 的 optparse 来做它最擅长的事情,但是如果没有通过命令行指定其他值,我无法弄清楚如何在默认参数值上触发选项回调;这甚至可能吗?这将使我的代码更干净。
不幸的是,我不能使用 argparse,因为我运行的平台有一个过时的 Python 版本。
编辑: 为了提供更多细节,我添加了一个带有回调和默认值的选项
parser.add_option(
"-f",
"--format",
type = "string",
action = "callback",
callback = format_callback,
default = "a,b,c,d")
回调函数定义如下:
def format_callback(option, opt, value, parser):
# some processing
parser.values.V = processed_value
基本上我正在处理"--format"
值并将结果放入解析器。这很好用,当"--format"
通过命令行直接指定时,但我希望回调也可以在默认"a,b,c,d"
值上触发。