tensorflow命令行下执行程序时传递参数
tf.app.flags.FLAGS 的使用,主要是在用命令行执行程序时,需要传些参数。新建一个.py文件,代码如下:
import tensorflow as tf
#第一个是参数名称,第二个参数是默认值,第三个是参数描述
tf.app.flags.DEFINE_integer('x1', 10, 'variable1')
tf.app.flags.DEFINE_integer('x2', 20, 'variable2')
FLAGS = tf.app.flags.FLAGS
def main(_):
x1 = tf.constant(FLAGS.x1)
x2 = tf.constant(FLAGS.x2)
y = x1 * x2
with tf.Session() as sess:
print(sess.run(y))
# 使用这种方式保证了,如果此文件被其他文件 import的时候,不会执行main 函数
if __name__ == '__main__':
tf.app.run()
#第一个是参数名称,第二个参数是默认值,第三个是参数描述
tf.app.flags.DEFINE_integer('x1', 10, 'variable1')
tf.app.flags.DEFINE_integer('x2', 20, 'variable2')
FLAGS = tf.app.flags.FLAGS
def main(_):
x1 = tf.constant(FLAGS.x1)
x2 = tf.constant(FLAGS.x2)
y = x1 * x2
with tf.Session() as sess:
print(sess.run(y))
# 使用这种方式保证了,如果此文件被其他文件 import的时候,不会执行main 函数
if __name__ == '__main__':
tf.app.run()
命令行下传递参数并执行程序:
python test.py \
--x1 15 \
--x2 20