Python numpy.fill()的Tensorflow等价物

Python numpy.fill()的Tensorflow等价物,python,tensorflow,Python,Tensorflow,我在Tensorflow中找不到等效的。Tensorflow有一个函数,但它不是等价的。具体来说,tensorflow函数返回一个新的常量张量 我有一个tf.Variable,我想在迭代之前将所有条目设置为某个常量值。什么功能或习语可以实现这一点 请注意,我想多次使用此函数。我们不是在讨论一个一次完成的迭代。举个例子,我可以这样做: tf.Variable( tf.fill( ... ) ) tf.Variable( tf.ones( ... ) ) 但这将导致创建大量临时变量。我更愿意创建一

我在Tensorflow中找不到等效的。Tensorflow有一个函数,但它不是等价的。具体来说,tensorflow函数返回一个新的常量张量

我有一个
tf.Variable
,我想在迭代之前将所有条目设置为某个常量值。什么功能或习语可以实现这一点

请注意,我想多次使用此函数。我们不是在讨论一个一次完成的迭代。举个例子,我可以这样做:

tf.Variable( tf.fill( ... ) )
tf.Variable( tf.ones( ... ) )

但这将导致创建大量临时变量。我更愿意创建一次变量,然后使用
填充重置它。除非你有一个从效率的角度来看不好的理由

您可以首先使用确定张量的形状,然后使用
常量
填充
方法

>>> mytf = tf.ones([2,3], tf.int32)
>>> mynew1 = tf.constant(3, shape = mytf.shape)
>>> mynew2 = tf.fill(mytf.shape, 4)
>>> print(sess.run(mytf))
[[1 1 1]
 [1 1 1]]
>>> print(sess.run(mynew1))
[[3 3 3]
 [3 3 3]]
>>> print(sess.run(mynew2))
[[4 4 4]
 [4 4 4]]

fill方法将不起作用,因为我需要一个可变对象,而fill对象是常量。整个要点是避免创建临时变量
填充
常量
之间的区别是什么?