python3对文本和二进制数据作了更清晰的区分,文本老是unicode的,由str类型表示,二进制数据则由bytes类型表示,python3不会以任意混用的方式调用str和bytes。正是这二者区分的比较清晰,因此不能拼接字符串和字节包
在python3里这两种类型之间经过encode和decod函数来转换
从str——>bytes 用encodepython
"hello world".encode("utf-8")
从bytes ——>str用decode编程
"hello world".decode("utf-8")
在何时会用到这个字节码呢?
在python3里socket编程,socket传输会使用字节码传输,这时候就须要将文本的字符串转换为字节码传输socket
字符编码转换ide