python - 以二进制打印整数张量

标签 python tensorflow binary type-conversion integer

我有一个 tf.int32 类型的张量 我想使用 tf.Print 但我需要结果是二进制的。 这可能吗? 用于调试。

例子:

constant = tf.constant(5)
#magic
tf.Print(constant) # prints 101

最佳答案

您可以使用 tf.py_function :

x = tf.placeholder(tf.int32)
bin_op = tf.py_function(lambda dec: bin(int(dec))[2:], [x], tf.string)

bin_op.eval(feed_dict={x: 5})   # '101'

但请注意,tf.py_function 在图中创建了一个节点。所以如果你想打印很多张量,你可以tf.Print之前用tf.py_function包裹它们,但是在循环中这样做可能引起腹胀。

关于python - 以二进制打印整数张量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48123877/

相关文章:

c++ - 二进制 gcd 算法 - 不工作

java - java中的文字纠错程序

c++ - 将 'long' 类型转换为二进制字符串

python - 无法导入类

Python tensorflow 精简版错误 :Cannot set tensor: Got tensor of type 1 but expected type 3 for input 88

python - 如何在keras中测试自定义损失函数?

tensorflow - 如何用SSE4.2和AVX指令编译Tensorflow?

python - 根据列表索引将二进制列表转换为组合所需的值

python - 当 python2.7 运行良好时,python 3.3 出现缩进错误

python - 使用python从txt文件中提取单词