Python的字符编码遵循Unicode标准,但在不同的操作系统和编程环境下会有不同的默认字符编码,导致中文输出出现乱码等问题。解决中文输出乱码的问题,需要先理解编码和解码的概念。
在Python脚本文件的第一行,加上文件编码的设置,一般默认为utf-8:
# -*- coding: utf-8 -*-
在输出中文时,使用str
的encode()
方法指定编码方式,如下所示:
s = "你好"
s.encode('utf-8')
Python自带了一些字符编码库,如codecs
、io
等,可以用来处理编码和解码的问题。
import codecs
f = codecs.open('filename', 'w', 'utf-8')
f.write(u'你好')
以上代码会打开一个名为filename
的文件,以utf-8
格式写入一个包含双字节(英文和汉字用两个字节存储)的字符串。