使用pycharm在本地调试项目的时候,发现偶尔会出现下面的错误,导致项目无法继续执行下去。但是不适用debug模式,而使用运行模式 的时候不会有这样的问题。

E:\pycharm_pro\PyCharm 2019.2.3\helpers\pydev\_pydevd_bundle\pydevd_comm.py

r = r.decode('utf-8')

UnicodeDecodeError: ‘utf-8’ codec can’t decode byte 0xe5 in position 1023: unexpected end of data。

往往我们在开发的过程中,基本上都是使用debug模式来解决问题。所以这样的问题很烦,总不能一直碰运气的去碰到不会卡住的情况吧?

经过我一番折腾之后,找到了解决方案:

1、检查一下项目路径中是否含有中文路径,如果有,那就把中文部分的路径修改为英文。然后再去debug一下项目,基本上在这里就能解决了。如果改成了英文或者确实没英文路径,那也没有关系,还有一种更绝的方案;

2、这个方案就是更绝的方案了,一般情况下我基本上不会使用这种方案,因为这种方案需要去修改pycharm的源文件代码。

找到你报错的那一行代码,r = r.decode('utf-8'),然后将这行代码改成 r = r.decode('utf-8','ignore'),保存代码,重启pycharm就搞定了。 修改代码中,添加这个参数即可

为什么这样修改一下就解决问题了尼?

其实很简单,出现异常报错是由于decode()方法的第二个参数errors 的默认值为严格(strict)形式造成的,将其更改为(ignore)忽略就ok了