optparse
のmetavar
パラメーターが何に使用されるのかわかりません。あちこちで使われているように見えますが、その使用は見られません。
誰かが私にそれを明確にすることができますか? ありがとう。
@Guillaume が言うように、ヘルプの生成に使用されます。ファイル名などの引数を取るオプションが必要な場合は、metavar
パラメーターをadd_option
呼び出しに追加して、希望する引数名/記述子がヘルプ メッセージに出力されるようにすることができます。現在のモジュールのドキュメントから:
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 に由来します。
metavar はヘルプの生成に使用されているようです: http://www.python.org/doc/2.5.2/lib/optparse-generating-help.html
引数lookup-tagとして'dest'を使用したいが、metavarによってヘルプメッセージをマスクしたいという、metavarの別の意味のある使用法があります。(たとえば、サブパーサーを使用する場合に便利な場合があります)。(S.Lottのコメントに示されているように)。
parser.add_argument(
'my_fancy_tag',
help='Specify destination',
metavar='helpful_message'
)
または同等に
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_tagを名前空間に格納します。
./parse.py test
Namespace(my_fancy_tag='test')
metavar
オプションの後に画面に表示するために使用される変数です。通常、オプションがFILE
またはINT
またはSTRING
ユーザーへの後の提案入力に使用されます。を指定しないmetavar
と、追加したオプションの後に値がoptparse
出力dest
されます。