python3 中文乱码与默认编码格式设定方法
python默认编码格式是utf-8。在python2.7中,可以通过sys.setdefaultencoding('gbk')设定默认编码格式,而在python3.3中sys.setdefaultencoding()这个函数已经没有了。在python3.3中该如何设置内置的默认编码格式啊!急求!!!
(类似于“#coding:gbk”这种就不必来说了。能让import sys print(sys.getdefaultencoding())输出“gbk“的大神请进!!!)
python 3和2很大区别就是python本身改为默认用unicode编码。
字符串不再区分"abc"和u"abc", 字符串"abc"默认就是unicode,不再代表本地编码、
由于有这种内部编码,像c#和java类似,再没有必要在语言环境内做类似设置编码,比如“sys.setdefaultencoding”;
也因此也python 3的代码和包管理上打破了和2.x的兼容。2.x的扩展包要适应这种情况改写。
另一个问题是语言环境内只有unicode怎么输出gbk之类的本地编码。
答按惯例都在(序列化)输出时才转换成本地编码。
比如
file.write("GBK的中文".encode("GBK"))
python环境内字符串用str.encode("GBK")方法输出成字节串用于和其他环境交流。
相关推荐
chuckchen 2020-10-31
Will0 2020-10-12
Dreamhome 2020-10-09
xirongxudlut 2020-09-28
星辰大海的路上 2020-09-13
chaochao 2020-08-31
猪猪侠喜欢躲猫猫 2020-08-17
快递小可 2020-08-16
shengge0 2020-07-26
巩庆奎 2020-07-21
张文倩数据库学生 2020-07-19
xirongxudlut 2020-07-18
Ericbig 2020-07-18
kyelu 2020-07-09
liangzhouqu 2020-07-07
GuoSir 2020-06-28
chaigang 2020-06-27
pythonxuexi 2020-06-25