字符编码问题
------------恢复内容开始------------
所有的计算机都支持unicode编码。 unicode编码映射了世界上所有国家的字符编码集。
所以任何编码的字节都可以通过计算机转换成unicode
python3 中默认解释器编码为utf-8
解释的时候解释器默认按照utf-8的编码加载到内存,然后转换为unicode
python3 运行打印 汉字 路飞学城
在cmd中没有乱码(windows电脑在中国只支持gbk)为什么没有乱码呢?
因为cmd终端显示的是unicode unicode支持所有的语言。
pycharm 默认文件编码是utf-8
python2 你以什么编码开头去解释,python2就以什么编码加载到内存,而且并不会将其转换为unicode,意味着在cmd终端不能直接打印出来
只有两种情况,在windows下才不会乱码:
1.字符串以gbk格式显示
2.字符串以unicode格式显示
解码和编码
utf-8------->decode------>unicode 解码
unicode--------->encode--------->utf-8、gbk 编码
1 # coding:utf-8 2 a = '中国' 3 print a 4 b = a.decode('utf-8') # 变为unicode编码 以什么编码保存的就要以什么编码解码,解码后变为unicode 5 6 print b
------------恢复内容结束------------