Python 用二进制打印整数张量
我有一个Python 用二进制打印整数张量,python,tensorflow,binary,type-conversion,integer,Python,Tensorflow,Binary,Type Conversion,Integer,我有一个tf.int32类型的张量 我想使用tf.Print,但我需要二进制的结果。 这可能吗? 它是用来调试的 例如: constant = tf.constant(5) #magic tf.Print(constant) # prints 101 您可以使用: x=tf.placeholder(tf.int32) bin_op=tf.py_函数(lambda dec:bin(int(dec))[2:],[x],tf.string) bin_op.eval(feed_dict={x:5})#
tf.int32类型的张量
我想使用tf.Print
,但我需要二进制的结果。
这可能吗?
它是用来调试的
例如:
constant = tf.constant(5)
#magic
tf.Print(constant) # prints 101
您可以使用:
x=tf.placeholder(tf.int32)
bin_op=tf.py_函数(lambda dec:bin(int(dec))[2:],[x],tf.string)
bin_op.eval(feed_dict={x:5})#'101'
但是请注意,tf.py_函数
在图中创建了一个节点。因此,如果要打印许多张量,可以在tf.print
之前使用tf.py_函数
包装它们,但在循环中这样做可能会导致膨胀。最好的办法可能是重定向C流的输出,使用python对其进行修改,并将其打印为二进制文件。