Python 默认支持的是ASCII字符,包含了英文字母大小写以及标点符号,用一枚字节表示。中文则使用两枚字节表示。
当中文编码和ASCII混用的话,就会出现错误。
目前中文编码有GB2312,BIG5,GBK。
建议使用统一字符集Unicode,可以处理所有的语言文字。
如果在.py文件中使用中文,请使用:
#-*- coding:utf-8 –*-
请注意在使用IDE的时候,project的编码格式一定要设置为utf-8,否则输出的仍是乱码,因为你写的脚本没用UTF-8保存。
先别急着去练习,咱们来看看下面这个脚本:
#-*- coding:utf-8 –*- # chinese.py chinese=''' 在Python中使用中文,一定要 注意字符编码问题 ''' print chinese
在命令行运行的结果:
这是因为win的,命令行用的是cp936编码,而上面脚本用的是utf-8编码,因此导致乱码。
解决方法是,使用decode和encode函数对字符重新解码和编码。
print chinese.decode('utf-8').encode('cp936')