sys.argvの
ターミナル実行のpython 1.pyのHAHAHで
インポートSYSの プリント(sys.argvの) #[ '1.py'、 'HAHAH']
argparse
Pythonの組み込みのライブラリであるPythonのコマンドラインの構文解析モジュールは、我々はパラメータを定義したプログラムを通じて、argparseは、これらのパラメータから解析され、自動的にヘルプと使用情報を生成sys.argvのだろう。
argparseの簡単な使用
- ArgumentParserを作成する()オブジェクト
- コールadd_argument()パラメータを追加する方法
- parse_args()を使用し、パラメータの解析を追加
インポートargparse パーサ = argparse.ArgumentParser() parser.add_argument(' 整数'、タイプ= INT、ヘルプ= ' 整数を表示する' ) 引数 = parser.parse_args() プリント(args.integer)
上記のコードファイルを保存し argparse_usage.py
、次のように、端末内で実行されています、:
$ pythonのargparse_usage.py 使用:argparse_usage.py [ - H]整数 argparse_usage.py:エラー:あまりにもいくつかの引数$ ABCD argparse_usage.py pythonの 使用:argparse_usage.py [ - H]整数 argparse_usage.py:エラー:引数の整数:無効int値:' ABCD ' $の Pythonのargparse_usage.py - Hの 使用:argparse_usage.pyの[ - H]整数 位置引数: 整数が整数表示 オプションの引数は: -H、このヘルプメッセージを表示--helpと出口$を argparse_usage.pyパイソン 10 10
アライメントパラメータ
インポートargparse パーサ = argparse.ArgumentParser() parser.add_argument(" 正方形"、ヘルプ= " 所定の数の正方形を表示する"、タイプ= INT) 引数 = parser.parse_args() プリント(args.square ** 2)
上記のコードファイルを保存し argparse_usage.py
、次のように、端末内で実行されています、:
$の Pythonのargparse_usage.py 9
81
オプションのパラメータ
オプションのパラメータは、コマンドラインの引数はオプションであります
インポートargparse パーサ = argparse.ArgumentParser() parser.add_argument(" --square "、ヘルプ= " 所定の数の正方形を表示する"、タイプ= INT) parser.add_argument(" --cubic "、ヘルプ= " ディスプレイA所定数の立方」、タイプ= INT) 引数 = parser.parse_args() 場合:args.square 印刷 ** 2 args.square 場合args.cubic: 印刷 args.cubic ** 3
上記のコードファイルを保存し argparse_usage.py
、次のように、端末内で実行されています、:
$の Pythonのargparse_usage.py - 時間 使用:[argparse_usage.py -h] [--square SQUARE] [ - キュービックCUBIC] オプションの引数を: -h、このヘルプメッセージを示し--help と終了 - 平方SQUARE表示aを所与の数の二乗 - 立方CUBICディスプレイ所定数の立方$パイソンargparse_usage.py --square 8 64 $パイソンargparse_usage.py --cubic 8 512 $パイソンargparse_usage.py 8 用法:argparse_usage.py [ -h ] [--square SQUARE] [ - キュービックCUBIC] argparse_usage.py:エラー:認識できない引数を持つアウト: 8 $ Pythonのargparse_usage.py #何も出力しません
混合使用
位置パラメータオプションとパラメータが混合することができ、以下の例を見て、指定された整数の配列、またはその出力と最大値(デフォルト):
インポートargparse パーサ = argparse.ArgumentParser(説明= ' プロセス一部整数。' ) parser.add_argument(' 整数'、metavar = ' N '、タイプ= INT、NARGS = ' + ' 、 ヘルプ = ' アキュムレータ用整数' ) parser.add_argument(' --sum '、DEST = ' 累算'、アクション= ' store_const ' 、 CONST=合計、デフォルト= 最大、 ヘルプ = ' 合計は整数(デフォルト:最大を見つける。)' ) 引数 = parser.parse_args() プリント(args.accumulate(args.integers))
上記のコードファイルを保存し argparse_usage.py
、次のように、端末内で実行されています、:
$の Pythonのargparse_usage.pyの 使用:argparse_usage.py [ -h] [ -合計] N [N ...] argparse_usage.py:エラー:あまりにもいくつかの引数$ pythonのargparse_usage.py 1 2 3 4 4 $の Pythonのargparse_usage.py 1 2 3 4 -合計 10
add_argument()メソッド
ArgumentParser.add_argument(名前や旗... [アクション] [、NARGS] [、constの] [デフォルト] [タイプ] [、選択肢] [、必要] [ヘルプ] [、metavar] [、DEST] )
次のように各パラメータを説明します:
- 名前またはフラグ - 文字列や、FOOまたは-f、--fooなどのオプションのリストの名前。
- アクション - アクションコマンドラインパラメータ遭遇したとき、デフォルトはストアです。
-
- store_constは、割り当てられたCONSTを発現し; store_ture / store_false。詳細については、以下を参照してください。
- store_constは、割り当てられたCONSTを発現し; store_ture / store_false。詳細については、以下を参照してください。
- パラメータは繰り返しが複数の値を保持する場合、値は、遭遇したリストとして保存され、アペンド。
- append_const、リストへの仕様で定義されたパラメータの値を保存します。
- 遭遇したストレージをカウントし、カウントし、しかも、それがargparse.Actionのカスタムパラメータ解析を継承することができます。
- const - アクションとNARGSは一定の値を必要としていました。
- NARGS - 行数が読み込まれる値が使用デフォルト位置引数に指定されていない場合、コマンドパラメータが使用オプション引数constのために、特定の番号または番号であってもよく、またはアスタリスクは、0以上を表しますか?パラメータ、+記号または1つの以上のパラメータ。
- デフォルト - デフォルト引数なし。
- タイプ - コマンドライン引数の型が変換されなければなりません。
- 選択肢 - コンテナ許容パラメータ値。
- 必須 - オプションパラメータは(唯一のオプションパラメータのために)省略することができるかどうか。
- ヘルプ-するために割り当てられたヘルプパラメータ、 時のパラメータのヘルプを隠す表します。
argparse.SUPPRESS
- metavar - パラメータ名の使用説明書、必須パラメータのデフォルトパラメータ名で、デフォルトのパラメータは、すべて大文字のパラメータ名はオプションです。
- DEST - パラメータは解決された名前、選択したオプションの最も長い名前のデフォルトのパラメータは、アンダースコアに変換強調しました。
インポートargparseの パーサ = argparse.ArgumentParser() parser.add_argument(' --inter '、アクション= ' store_trueと' ) 引数 = parser.parse_args() プリント(args.interpolate)
コマンドラインで実行するようにtemp.pyのPythonを args.interpolateがFalse
コマンドラインで実行するように--inter Pythonのtemp.pyを args.interpolateがTrueであります
(c)に定義されたフラグコマンドライン引数の使用を学習tensorflow
tensorflow使用コマンドライン引数
彼は、アプリケーションは、次のパラメータは、コマンドラインtf.app.flagsタイプのパラメータを定義受け入れサポート1、tf.app.flags()#
DEFING_string(flag_name、DEFAULT_VALUE、ドキュメンテーション文字列)
DEFING_integer(flag_name、DEFAULT_VALUE、ドキュメンテーション文字列)
DEFING_boolean(flag_name、DEFAULT_VALUE、ドキュメンテーション文字列)
DEFING_float(flag_name、DEFAULT_VALUE、ドキュメンテーション文字列)
2、tf.app.flagsは、FLAGSフラグ内のフラグがあり、彼はプログラムの中で私たちの前に定義されたflag_nameを呼び出すことができ、
tf.app.run(3によって、出発マイニ(ARGV)関数)
tf.app.flags.DEFINE_integer(" MAX_STEP "、0、" トレーニングモデルのステップ数" ) tf.app.flads.DEFINE_string(" model_dir "、"" 、" モデルパスモデル名+を保存" ) FLAGS = TF .app.flags.FLAGS #はコマンドラインパラメータ定義 プリント(FLAGS.max_step) プリント(FLAGS.model_dir) DEF メイン(ARGV): プリント(ARGV) tf.app.run() #は、主な機能を起動します