在定义变量上python与tensorflow不同
tensorflow语法:state = tf.Variable()
如果在tensorflow中定义了变量,那么一定要初始化变量:init = tf.initialize_all_variables() # tf 马上就要废弃这种写法,用下面这种
init = tf.global_variables_initializer()
import tensorflow as tf
state = tf.Variable(0, name='counter') # 定义一个变量,初始值为0,命名为counter
one = tf.constant(1) # 常量1
new_value = tf.add(state, one) # 定义加法步骤
update = tf.assign(state, new_value) # 将 State 更新成 new_value,把new_value加到state上
# tf.initialize_all_variables() no long valid from
# 2017-03-02 if using tensorflow >= 0.12
if int((tf.__version__).split('.')[1]) < 12 and int((tf.__version__).split('.')[0]) < 1:
init = tf.initialize_all_variables()
else:
init = tf.global_variables_initializer() # 如果定义 Variable, 就一定要用 initialize
with tf.Session() as sess:
sess.run(init) # 执行 初始化所有的变量
for _ in range(3): # 3次循环
sess.run(update) # 执行update
print(sess.run(state)) # 执行state并打印
结果
E:\Anaconda\python.exe D:/code/tutorials-master(莫烦示例)/tensorflowTUT/tensorflow7_variable.py
1
2
3