2
私はPythonのを使用しています。引数のヘルプテキストのインデントが少なくてすみます。これはが発生しているものです。argparseで引数のインデントレベルを下げる方法は?
$ ./help.py -h
usage: help.py [-h] [--program-argument PROGRAM_ARGUMENT]
Description of program
optional arguments:
-h, --help show this help message and exit
--program-argument PROGRAM_ARGUMENT
This is some help text about --program-argument. For example:
--program-argment "You can supply a string as the program argument"
私はそれがよりこのような何かを生成したい:
$ ./help.py -h
usage: help.py [-h] [--program-argument PROGRAM_ARGUMENT]
Description of program
optional arguments:
-h, --help show this help message and exit
--program-argument PROGRAM_ARGUMENT
This is some help text about --program-argument. For example:
--program-argment "You can supply a string as the program argument"
は達成可能ということですか?これは私のコードです:
#! /usr/bin/env python
import argparse
HELP_TEXT = """\
This is some help text about --program-argument. For example:
--program-argment "You can supply a string as the program argument"
"""
if __name__ == '__main__':
argument_parser = argparse.ArgumentParser(
formatter_class=argparse.RawTextHelpFormatter,
description=('Description of program'))
argument_parser.add_argument(
'--program-argument',
help=HELP_TEXT
)
args, unknown = argument_parser.parse_known_args()
:
6
の値は次のようになります?私たちのリンターはそれに不平を言ったので、私は 'def'に変更しましたが、' metavar tupleの長さはnargsと一致しません。 – Drew
@Drewラムダはちょうど最も便利でした、方法も同様に動作します。 'length of metavar'問題に遭遇しているなら、メソッドの引数が' prog'と呼ばれていることを確認します。なぜなら、 'argparse'がそのメソッドを呼び出すためです。さらなる助けが必要な場合は、私に知らせてください。私が家に帰ってコンピュータにアクセスすると、私は反応します。 – birryree
ああ、私は引数名を 'program'に変更しました。それがkwarg経由で渡されたことを認識していませんでした。 – Drew