python小记——python的编码问题详解
python文件IO操作时,对编码知识一概不知,那可真的是蛋疼了哈。utf-8啊、gbk、还有encode()、decode()等函数以及encoding参数,搞不好就乱码甚至是报错,那可是头都大了。不说了不说了先上代码先上代码。( 下面代码是在Windows系统上进行演示的) import sys import locale str = '小甲' print ( str ) print ( type ( str ) ) print ( sys . getdefaultencoding ( ) ) print ( locale . getdefaultlocale ( ) ) with open ( 'utf' , 'w' , encoding = 'utf-8' ) as file : file . write ( str ) with open ( 'gbk' , 'w' , encoding = 'gbk' ) as file : file . write ( str ) 输出结果: 小甲 < class 'str' > utf - 8 ( 'zh_CN' , 'cp936' ) 解释: getdefaultencoding():返回的是系统编码格式,这里的系统指的不是操作系统,而是python编译器的默认编码,python3的编码是UTF-8。