章XIV:アプリケーションのビルディングブロックは-argparse:コマンドラインオプションとパラメータを解析 - 出力を助ける - カスタマイズされたヘルプ

14.1.5.2カスタマイズされたヘルプ
アプリケーションの出力の助けを借りて直接対処する必要性については、ArgumentParserは、あなたが印刷には、追加情報が含まれている助けるためにカスタムアクションを作成することができますいくつかのツールに便利な方法を提供します。

import argparse

parser = argparse.ArgumentParser(add_help=True)

parser.add_argument('-a',action="store_true",default=False)
parser.add_argument('-b',action="store",dest="b")
parser.add_argument('-c',action="store",dest="c",type=int)

print('print_usage output:')
parser.print_usage()
print()

print('print_help output:')
parser.print_help()

print_usage()は、パラメータパーサとして、短い使用方法のメッセージを出力します、print_help()完全なヘルプ出力を表示します。
ここに画像を挿入説明
出力の外観を制御するのを助けるためにフォーマッタクラスを使用してArgumentParser。このクラスを変更するには、インスタンス化ArgumentParserでformatter_class渡すことができます。

import argparse

parser = argparse.ArgumentParser(
    add_help=True,
    formatter_class=argparse.RawDescriptionHelpFormatter,
    description="""
    description
        not
            warpped""",
    epilog="""
    epilog
        not
            wrapped"""
    )

parser.add_argument(
    '-a',action="store_true",
    help="""argument
    help is
    wrapped
    """,
    )

parser.print_help()

コマンドの説明と、すべての文書がそのままエピローグに保存されます。
ここに画像を挿入説明
それは同じことを事前にフォーマットされたかのようにRawTextHelpFormatterは、すべてのヘルプテキストが扱われます。

import argparse

parser = argparse.ArgumentParser(
    add_help=True,
    formatter_class=argparse.RawTextHelpFormatter,
    description="""
    description
        not
            warpped""",
    epilog="""
    epilog
        not
            wrapped"""
    )

parser.add_argument(
    '-a',action="store_true",
    help="""argument
    help is not
    wrapped
    """,
    )

parser.print_help()

ヘルプファイルに対応する-Aパラメータが適切に折り返されません。
ここに画像を挿入説明
いくつかの例で説明したいくつかのアプリケーションやエピローグでは、テキスト形式は、これらの例への変更は、もはや有効では、これらのアプリケーションのために、生のフォーマットが有用でないかもしれないことがあります。MetavarTypeHelpFormatterがありそのため、代わりに目標変数の、各オプションのタイプの名前を印刷する
オプションの異なる種類の多数のアプリケーションが有用であり得ます。

import argparse

parser = argparse.ArgumentParser(
    add_help=True,
    formatter_class=argparse.MetavarTypeHelpFormatter,
    )

parser.add_argument('-i',type=int,dest='notshown1')
parser.add_argument('-f',type=float,dest="notshown2")

parser.print_help()

DEST値は表示されませんが、オプションに関連付けられているタイプの名前を表示します。
ここに画像を挿入説明

おすすめ

転載: blog.csdn.net/weixin_43193719/article/details/93116438