为什么结果打印出b’hello,Python!’

Why the result prints b'hello,Python!' ,when I use tensorflow?

本问题已经有最佳答案,请猛点这里访问。

代码固定在下面:

1
2
3
4
5
6
7
import tensorflow as tf

hello=tf.constant("hello,Python!")

sess=tf.Session()

print(sess.run(hello))

enter image description here

当前结果固定在下面:

b'hello,Python!'

然后屏幕截图

那么,我该怎么做才能在当前结果之前去掉奇怪的"b"?


他用Python的文档:

A prefix of 'b' or 'B' is ignored in Python 2; it indicates that the
literal should become a bytes literal in Python 3 (e.g. when code is
automatically converted with 2to3). A 'u' or 'b' prefix may be
followed by an 'r' prefix.

那么Python 3.x

bytes = b'...' literals = a sequence of octets (integers between 0 and
255)

它不是真的在那里,它只会印制。这不应该引起任何问题的地方。

你可以尝试解码("UTF-8")来转换它的结构。

我的作品

1
2
3
4
>>> print(out)
b'hello,Python!'
>>> out.decode('utf-8')
'hello,Python!'