python中默认的系统编码是anscii,使用如下代码可以获取&设置系统编码。处理中文时,我倾向于设置为utf-8编码。
使用python自带的open()函数获取到的handler做write()操作时,不能将unicode编码的字符写到文件中去,如果要想将unicode编码的字符写到文件中去,可以使用codecs模块来实现。
codecs模块写文件操作如下所示:
如上图所示,上图中是将字符编码为utf-8之后存储到文件中的,也可以直接存储unicode字符。
codecs模块读文件操作如下所示:
、
如上图所示,如果文件中存储的是unicode字符,则line仍然为unicode编码的字符,open()函数中的‘utf-8’并不表示将读取出来的字符转换成utf-8编码。
让python的json.dumps输出中文,而非unicode编码。
python的json.dumps方法默认会输出成这种格式"\u535a\u5ba2\u56ed",
要输出中文需要指定ensure_ascii参数为False,如下代码片段:
json.dumps({'text':"中文"},ensure_ascii=False)