version: 0.11.0
コマンドラインオプション
簡単なコマンドラインオプションを定義できます.
使い方
app.py
import tensorflow as tf
tf.app.flags.DEFINE_boolean("bool", True, "bool value")
tf.app.flags.DEFINE_integer("int", 0, "int value")
tf.app.flags.DEFINE_string("str", "str", "string value")
tf.app.flags.DEFINE_string("test_str", "test", "test string value")
def main(argv):
flags = tf.app.flags.FLAGS
print(flags.bool, flags.int, flags.str, flags.test_str)
if __name__ == '__main__':
tf.app.run()
% python test.py --help
usage: test.py [-h] [--bool [BOOL]] [--nobool] [--int INT] [--str STR]
[--test_str TEST_STR]
optional arguments:
-h, --help show this help message and exit
--bool [BOOL] bool value
--nobool
--int INT int value
--str STR string value
--test_str TEST_STR test string value
% python test.py --int 1000 --test_str "TEST"
(True, 1000, 'str', 'TEST')
API
値の追加
tf.app.flags.DEFINE_boolean(flag_name, default_value, docstring)
tf.app.flags.DEFINE_integer(flag_name, default_value, docstring)
tf.app.flags.DEFINE_string(flag_name, default_value, docstring)
Args:
- flag_name: 変数名 & コマンドライン・オプション名
- default_value: デフォルト値
- docstring: コマンドライン ヘルプ
値の取得
tf.app.flags.Flag
tf.app.flags.DEFINE_boolean(test_bool, True, "test bool value")
tf.app.flags.Flag.test_bool #-> True
パース
tf.app.run(main=None)
Args:
- main: コマンドラインをエスケープした後に実行するargvを引数とする関数func(argv)
tensorflowがエスケープできなかった残りのコマンドライン引数が渡される.
Noneの場合__main__.main
が実行される