【发布时间】:2014-07-26 23:16:33
【问题描述】:
我想知道是否有一种方法可以使用从其他地方获取的 argparse 中的元变量。例如,有一个 -f FILE 选项和一个 -d DIR 选项。我可以借助 -d 获取 file.metavar 之类的吗?
也许:
parser.add_argument("-f", "--file",
metavar = 'FILE',
action="store", dest="file_name", default="foo.bar",
help="Name of the {} to be loaded".format(metavar))
parser.add_argument("-d", "--dir",
metavar = 'DIR',
action = 'store', dest='file_dir', default=".",
help="Directory of {} if it is not current directory".format(option.file_name.metavar)
我知道这段代码是错误的(字符串没有元变量,并且在 parser.parse_args() 运行之前不会设置选项),但我有几次其他时候我只想抓住元变量而没有一堆:
meta_file = 'FILE'
meta_dir = 'DIR'
meta_inquisition = 'SURPRISE'
飘来飘去。
谢谢。
编辑: s/add_option/add_argument/
【问题讨论】:
-
我不这么认为。有很多问题要求在“帮助”中使用“默认”参数。而且没有办法。