Python培训
400-996-5531
在学习python培训中,很多同学会在培训过程中遇到乱码,有的小伙伴为了躲避中文乱码的问题甚至代码中不使用中文,注释和提示都用英文,我曾经也这样干过,但这并不是解决问题,而是逃避问题,今天我们一起彻底解决 Python 中文乱码的问题。
乱码原因:
源码文件的编码格式为utf-8,但是window的本地默认编码是gbk,所以在控制台直接打印utf-8的字符串当然是乱码了!
解决方法:
1、print mystr.decode('utf-8').encode('gbk')
2、比较通用的方法:
import sys
type = sys.getfilesystemencoding()
print mystr.decode('utf-8').encode(type)
1. Python中列表或字典输出乱码的解决方法
问题: Python中的列表(list)或字典包含中文字符串,直接使用print会出现以下的结果:
#打印字典dict = {'name': '张三'}print dict>>>{'name': '\xe5\xbc\xa0\xe4\xb8\x89'}
#打印列表list = [{'name': '张三'}]print list>>>[{'name': '\xe5\xbc\xa0\xe4\xb8\x89'}]
解决方案:
使用以下方法进行输出:
import json
#打印字典
dict = {'name': '张三'}
print json.dumps(dict, encoding="UTF-8", ensure_ascii=False)
>>>{'name': '张三'}
#打印列表
list = [{'name': '张三'}]
print json.dumps(list, encoding="UTF-8", ensure_ascii=False)
>>>[{'name': '张三'}]
2. Python2.7的UnicodeEncodeError: ‘ascii' codec can't encode异常错误
#重置编码格式
import sys
reload(sys)sys.setdefaultencoding('utf-8')
以上就是python中文乱码的解决方法的详细内容。
免责声明:整理文章为传播相关技术,版权归原作者所有,如有侵权,请联系删除
填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!
Copyright © 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有
Tedu.cn All Rights Reserved