python2和python3中文和英文编码问题

时间:2021-08-06 18:34:16

python2和python3编码区别

a='2017pthton学习'
b=u'2017pthton学习'
print(a.encode('utf-8'))   #b'2017pthton\xe5\xad\xa6\xe4\xb9\xa0'
print(b.encode('utf-8'))   #b'2017pthton\xe5\xad\xa6\xe4\xb9\xa0'
#在python2里面,python编码是以Unicode形式存在,解码时候会出错误
#widows GB2132 编码,linux是 utf-8编码
print(a.decode('gb2312').encode('utf-8')) #就可以解决错误问题

在python2中还有两种表明编码的方式

# _*_ coding:utf-8 _*_

还有种再头部加sys

import sys
sys.getdefaultencoding('utf8')