2、python2中默认的字符编码格式都是unicode,在字符串前加'u',表示unicode 编码
3、将unicode转换成中文,只需要用deconde解码就可以了!
操作方法:1.程序中出现有使用中文的地方
但是代码中并没有声明采用的编码格式。
2.由于代码中没有指定编码方式,执行这段程序时会出现如下错误。
3.解决方案一:加载python代码前面加上【#coding=utf-8】
加上这段代码申明使用utf-8编码
4.此时再执行原来的程序,将会正常打印出中文
5.解决方案二:加载python代码前面加上【-*- coding: utf-8 -*-】
6.结果依旧可以正常打印中文
因为windows默认的编码方式是GBK,python文件保存时使用了utf-8,在读取时,python使用GBK的编码表去解utf-8编码的字节码,因为GBK与UTF-8编码不兼容,自然出现了乱码问题
解决方法:
1.直接使用 u'是' 形式,指明以unicode编码,解码方式会以顶部 #coding定义的编码方式,如果不写,以操作系统当前编码方法,建议写上#coding,因为要让操作系统编码和源文件编码经常会不一样。推荐使用这种方式
2.输出时指定解码方法 print '是'.decode("utf8") ,必须和保存的编码一致,忽略#coding的定义
3.将#coding 和保存编码改为和操作系统一样的编码,就可以直接print '是' 正常输出,也不推荐,因为需要事先知道操作系统编码,复制到其他电脑上,操作系统编码不一样就会出错
#coding=gbkprint u'是' #方法1
print '是'.decode("gbk") #方法2
print '是' #方法3
注意:
#coding指明的编码必须和保存的编码一样,不然1,3方法都会产生错误,原因也是保存编码和读取编码不一致。一般IDE能够自动根据#coding保存文件