(文章写的有点乱,凑合看吧)
在Python 3中有两种表示字符串的方式:bytes和str。bytes的实例包含原始的8位值(raw 8-bit values);str实例包含Unicode字符。
Python 2中也有两种表示字符串的方式:str和unicode。与Python 3对比,Python 2中str实例包含原始的8位值,unicode包含Unicode字符。
有很多种方式能够将Unicode字符表示为二进制数据(binary data,raw 8-bit values)。最常用的一种编码格式是UTF-8。需要注意的是,Python 3中的str实例以及Python 2中的unicode实例都没有相关的二进制编码格式。要想使Unicode字符转换成二进制数据必须使用encode方法。要想使二进制数据转换成Unicode字符必须使用decode方法。
Python 3代码示例:
当你在编写Python程序时,最好在远离接口的地方进行decode、encode操作。代码的核心应该使用Unicode字符类型(Python 3中使用str,Python 2中使用unicode)