首先一维数组:
import tensorflow as tf
a=tf.Variable(tf.zeros(shape=(10)))
init=tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
sess.run(tf.assign(a[0],1.0))
print(sess.run(a))
一维数组没问题,换成二维数组:
import tensorflow as tf
a=tf.Variable(tf.zeros(shape=(10,10)))
init=tf.global_variables_initializer()
with tf.Session() as sess:
sess.run(init)
sess.run(tf.assign(a[0][0],1.0))
print(sess.run(a))
报错:Sliced assignment is only supported for variables
只有variable支持切片赋值
为此我打印了类型,当a为一维数组时打印a[0]的类型,当a为二维数组时打印a[0][0]的类型,结果都为:,为什么a为一维数组时对a[0]赋值不报错,而当a为二维数组时对a[0][0]赋值就会报错,gaobudong