Python2、3解释器中字符串中的区别
python3中两种字符串类型:
-
str : unicode的呈现形式
-
bytes :字节类型,互联网上数据的都是以二进制的方式(字节类型)传输的
使用方法:
-
str 使用encode方法转化为 bytes
-
bytes 通过decode转化为 str
2.1 python2中字符串有两种类型
-
unicode类型
-
字节类型
在Python2中,字符串无法完全地支持国际字符集和Unicode编码。为了解决这种限制,Python2对Unicode数据使用了单独的字符串类型。要输入Unicode字符串字面量,要在第一个引号前加上'u'。
Python2中普通字符串实际上就是已经编码(非Unicode)的字节字符串。
2.2 python2中字节类型和unicode类型的转化
- 字节类型通过decode转化为unicode类型
- unciode类型通过encode方法转化为字节类型
- 方法的使用和python3相同,但是在方法中默认的编解码方式为
ascii
,对中文需要手动指定为utf-8