1 源文件编码
在文件头部使用coding声明。告诉python 解释器该代码文件所使用的字符集。
#/usr/bin/python
#coding: utf8
2 内部编码
代码文件中的字符串,经过decode以后,被转换为统一的unicode格式的内部数据,类似于u'*'。unicode数据可以使用encode函数,再自由转换为其他格式的数据,相当于一个统一的平台。
直接输入unicode数据
>>> u'你好'
u'\u4f60\u597d'
将unicode数据转换为 gb2312 格式
>>> u'你好'.encode('gb2312 ')
'\xc4\xe3\xba\xc3'
将输入的gb2312 格式的数据解码为unicode
>>> '你好'.decode('gb2312 ')
u'\u4f60\u597d'
isinstance(s, unicode) #用来判断是否为unicode
获得系统的默认编码 ?
#!/usr/bin/env python
#coding=utf-8
import sys
print sys.getdefaultencoding()
Unicode和普通字符串之间转换
# 将各种Python字符串转化为Unicode:"decode"
#中文 -> unicode unicodestring = unicode(str, "gbk") u'\u4f60\u597daaa' #utf-8 -> unicode str='Hello world' unicodestring = unicode(str, "utf-8") >>>u'Hello world' #acii -> unicode unicodestring = unicode(str, "ascii") #ISO-8859-1 -> unicode unicodestring = unicode(str, "ISO-8859-1") #utf-16 -> unicode unicodestring = unicode(str, "utf-16")
# 将Unicode转化为普通Python字符串:"encode"
utf-8和gbk转换
print str.decode('UTF-8').encode('GBK')
浙公网安备 33010602011771号