Python optparse 的 metavar

27 投票
5 回答
13102 浏览
提问于 2025-04-11 20:18

我不太明白 optparse 里的 metavar 参数是用来干嘛的。我看到它到处都有,但就是看不出它的用处。

有没有人能给我解释一下?谢谢。

5 个回答

0

metavar 是一个变量,用来在选项后面显示一些信息。通常,它会用来给用户提供输入建议,比如输入的内容可以是 FILE(文件)、INT(整数)或者 STRING(字符串)。如果没有 metavar,那么 optparse 就会在你添加的选项后面显示 dest 的值。

5

metavar 这个东西似乎是用来生成帮助信息的:http://www.python.org/doc/2.5.2/lib/optparse-generating-help.html

32

正如@Guillaume所说,这个功能是用来生成帮助信息的。如果你想要一个选项可以接受一个参数,比如文件名,你可以在调用add_option的时候添加metavar参数,这样你想要的参数名称或描述就会在帮助信息中显示出来。根据当前模块的文档

usage = "usage: %prog [options] arg1 arg2"
parser = OptionParser(usage=usage)
parser.add_option("-f", "--filename",
                  metavar="FILE", help="write output to FILE"),

生成的帮助信息会像这样:

usage: <yourscript> [options] arg1 arg2

options:
  -f FILE, --filename=FILE

在“-f”和“--filename”后面的“FILE”就是来自于metavar。

撰写回答