在tensorflow文档(版本r0.11,Python 3.4.3)之后,我输错了两次1
而不是1
。
代码如下:
import tensorflow as tf
state = tf.Variable(0, name="counter")
one = tf.constant(1)
new_value = tf.add(state, one)
update = tf.assign(state, new_value)
init_op = tf.initialize_all_variables()
with tf.Session() as sess:
sess.run(init_op)
print(sess.run(state))
for _ in range(3):
sess.run(update)
print(sess.run(state))
然后打印结果就像这样
0
1
1
2
2
3
3
答案 0 :(得分:1)
sess.run(update)
更新变量并返回其值。因此,当您在python shell中运行此代码时,它会打印state
的值(请参阅here why)。
因此,如果您只想查看state
的每个新值的一次,请删除
print(sess.run(state))
或用python脚本编写代码。