转载自:https://blog.csdn.net/m0_37041325/article/details/77448971
tf.app.flags.DEFINE_xxx()就是添加命令行的optional argument(可选参数),而tf.app.flags.FLAGS可以从对应的命令行参数取出参数。
举个栗子
新建test.py文件,并输入如下代码,代码的功能是创建几个命令行参数,然后把命令行参数输出显示
import tensorflow as tf
FLAGS=tf.app.flags.FLAGS
tf.app.flags.DEFINE_float(
'flag_float', 0.01, 'input a float')
tf.app.flags.DEFINE_integer(
'flag_int', 400, 'input a int')
tf.app.flags.DEFINE_boolean(
'flag_bool', True, 'input a bool')
tf.app.flags.DEFINE_string(
'flag_string', 'yes', 'input a string')
print(FLAGS.flag_float)
print(FLAGS.flag_int)
print(FLAGS.flag_bool)
print(FLAGS.flag_string)
1.在命令行中查看帮助信息,在命令行输入 python test.py -h
注意红色框中的信息,这个就是我们用DEFINE_XXX添加命令行参数时的第三个参数
2.直接运行test.py
因为没有给对应的命令行参数赋值,所以输出的是命令行参数的默认值。
3.带命令行参数的运行test.py文件
这里输出了我们赋给命令行参数的值