Python 3对文本和二进制数据作了更为清晰的区分。
文本总是Unicode,由str类型表示,

二进制数据则由bytes类型表示。

不能拼接字符串和字节包,也无法在字节包里搜索字符串(反之亦然),也不能将字符串传入参数为字节包的函数(反之亦然)。

a='中文'
b=a.encode("utf-8")

c=b'\xe4\xb8\xad\xe6\x96\x87'
d=c.decode("utf-8")

b'\xe4\xb8\xad\xe6\x96\x87'

中文