PYTHON 2.7 error: 'utf8' codec can't decode byte 终极解决办法

1、从百度上搜索到的答案大部分是添加# -*- coding: utf-8 -*- # 但是,添加后问题并没有解决。

2、又改为# -*- coding: GBK -*- # ,问题还是没解决。

3、百度上还有这样的答案,重新另存为utf-8格式;或者这样的答案,最初的编码错误,最初应该用utf-8格式输入。但是我在另存为没有看到utf-8选项;我把代码考到txt中,另存为utf-8,然后再拷过来,还是没用。

4、google上的答案就更深了,大部分是在解释编码的原理,回答的并不是我的问题。

5、结合百度上这两个结果,和google不到答案的事实,我有了基本判定:这个问题很简单,所以google不屑于回答,百度的两种答案其实是在讲同一件事情。

6、重新新建项目,添加# -*- coding: utf-8 -*- #,保存并运行,失败。

7、重新新建项目,添加# -*- coding: GBK-*- #,保存并运行,成功。


后记:

1、# -*- coding: utf-8 -*- #其实就是相当于另存为时选择保存的编码格式,之后就可以删除了。如果文件已经保存为某种格式,再加上这个代码也不会改变原始编码。

2、这里可以用

import sys
print sys.getdefaultencoding()

这个代码来检测系统的默认编码格式,比如我的是GBK,直接添加# -*- coding: GBK-*- #,就不用再一次次的试验# -*- coding: utf-8 -*- #等其他编码效果了。

3、不过最大感受是python2.7对中文的支持太不友善了,还是换python3吧。不然太折腾,为了PIL不值得…


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值