1,unicode转换成str
unicode = u'xffzzzzzz'
#把 unicode 转换成 str 字符串格式
str = unicode.encode('raw_unicode_escape')
print (type(str))
2,unicode转换成汉字
s = r'\u4eba\u751f\u82e6\u77ed\uff0cpy\u662f\u5cb8'
s = s.decode('unicode_escape')
print s
人生苦短,py是岸
补充:
在python2的字符编码问题时常会遇到“UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-5: ordinal not in range(128)”的编码错误。
而用以下方法通常可以解决:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')
此方法是将Python2的默认编码ASCII改为 utf-8。但此方法不是一劳永逸的,可能会使一些代码的行为变得怪异
网友评论