問題:
- プログラムは、コマンドラインオプションを解析するにはどうすればよいです
ソリューション
argparse
モジュールは、コマンドラインオプションを解析するために使用することができます
argparse
モジュール
argparse
モジュールは、設定オプションの数が多いと、標準ライブラリモジュールで最大の一つであります
dest
パラメータは、プロパティの名前に割り当てられている分析結果を指定します
metavar
パラメータは、ヘルプを生成するために使用されています
action
パラメータは、処理ロジック、正常値に対応する属性を指定する store
文字列、アクションとして格納され、= 「APPEND」 単一のリストの中に収集された値以上のパラメータ値を記憶するために
パラメータオプションが指定されたら、実行することができます parser.parse()
行く方法を。これは、処理する sys.argv
値を、結果のインスタンスを返します。各パラメータ値は、この例に設定されている add_argument()
メソッドの dest
パラメータで指定された属性値。
NARGS役割:リストに引数
輸入argparse パーサ= argparse.ArgumentParser(説明は= 'いくつかのファイルを検索') parser.add_argument(DEST = 'ファイル名'、metavar = 'ファイル名'、NARGS = '*') 引数= parser.parse_args() 印刷(args.filenames )
スクリプトの実行
パイソンtest_nargs.py t.txt t1.txt t2.txt
アクション=「store_trueと」 の有無に応じてパラメータを設定する Boolean
フラグ
輸入argparse パーサ= argparse.ArgumentParser(説明= 'いくつかのファイルを検索') parser.add_argument( ' - V'、DEST = 'verbose'を、アクション= 'store_trueと'、 ヘルプ= '詳細モード') 引数= parser.parse_args( ) プリント(args.verbose)
スクリプトの実行
アクション= 「ストア」 単一の値を受け入れるようにし、文字列として保存されます
輸入argparse パーサ= argparse.ArgumentParser(説明= 'いくつかのファイルを検索') parser.add_argument( ' - O'、DEST = 'OUTFILE'、アクション= '店'、 ヘルプ= '出力ファイル') 引数= parser.parse_args( ) プリント(args.outfile)
スクリプトの実行
アクション= 受信値リストに追加「APPEND」
輸入argparseの パーサ= argparse.ArgumentParser(説明= 'いくつかのファイルを検索') parser.add_argument( ' - O'、 ' -パット'、DEST = 'OUTFILE'、アクション= 'APPEND'、 = '出力ファイル'を助けます) 引数= parser.parse_args() プリント(args.outfile)
スクリプトの実行
パイソンtest_nargs.py -oハロー--pat hello1
選択肢= { 「遅い」、「FAST」}、デフォルト= 「遅い」 パラメータ値を受け取り、値を選択することが可能となり、その正当性を検出するために比較
インポートargparse パーサ= argparse.ArgumentParser(説明= 'いくつかのファイルを検索') parser.add_argument( ' -スピード'、DEST = '速度'、アクションは= '店'、 選択肢= { '遅い'、 '速いです'}、デフォルト= '遅い'、 ヘルプ= '検索速度') 引数= parser.parse_args() プリント(args.speed)
スクリプトの実行