Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python optparse元变量_Python_Optparse - Fatal编程技术网

Python optparse元变量

Python optparse元变量,python,optparse,Python,Optparse,我不确定optparse的metavar参数用于什么。我看到它被广泛使用,但我看不出它的用途 有人能跟我说清楚吗?谢谢。metavar似乎用于生成帮助:正如@Guillaume所说,它用于生成帮助。如果希望有一个接受参数(如文件名)的选项,可以将metavar参数添加到add_option调用中,以便在帮助消息中输出首选参数名称/描述符。发件人: 将产生如下帮助: usage: <yourscript> [options] arg1 arg2 options: -f FILE,

我不确定optparse的
metavar
参数用于什么。我看到它被广泛使用,但我看不出它的用途


有人能跟我说清楚吗?谢谢。

metavar似乎用于生成帮助:

正如@Guillaume所说,它用于生成帮助。如果希望有一个接受参数(如文件名)的选项,可以将
metavar
参数添加到
add_option
调用中,以便在帮助消息中输出首选参数名称/描述符。发件人:

将产生如下帮助:

usage: <yourscript> [options] arg1 arg2

options:
  -f FILE, --filename=FILE
用法:[选项]arg1 arg2 选项: -f FILE,--filename=FILE
“-f”和“-filename”后面的“FILE”来自metavar。

metavar
是一个用于在屏幕after选项中打印的变量。通常用于选项后的建议输入是
FILE
INT
STRING
。如果没有
metavar
optparse
将在添加选项后打印
dest
值。

metavar还有另一个有意义的用法,即希望使用“dest”作为参数查找标记,但通过metavar屏蔽帮助消息。(例如,有时在使用Subparser时很方便)。(如的评论所示)

或者同等地

parser.add_argument(
        dest='my_fancy_tag',
        help='Specify destination',
        metavar='helpful_message'
        )
帮助将显示metavar:

./parse.py -h usage: parser [-h] destination

positional arguments:   
  helpful_message  Specify destination
但dest将在命名空间中存储fancy_标记:

./parse.py test 
Namespace(my_fancy_tag='test')

现在最好使用库而不是optpass

给出原因。

metavar=“helpfulname”使用有用的名称自定义帮助消息;与dest=“name”不同。dest=“name”可能对用户没有帮助。
./parse.py -h usage: parser [-h] destination

positional arguments:   
  helpful_message  Specify destination
./parse.py test 
Namespace(my_fancy_tag='test')