Python2.7编码问题:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position...解决方法 - Go语言中文社区

Python2.7编码问题:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position...解决方法


本人在Ubuntu使用sublime text3运行Python程序时遇到编码问题:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 39: ordinal not in range(128)

此问题出现在:import matplotlib.pyplot as plt 语句中

其原因是matplotlib库中使用了不符合当前sublime text3中Python编码环境的语句,在命令行不会出现此问题。

解决方法:

在Python程序最前面加上以下语句:

import sys
reload(sys)
sys.setdefaultencoding('utf-8')

将默认编码设置为utf-8

此时问题解决,但是在每个py脚本加上这句话太麻烦,这时我们只需在出问题的地方加上这三句话。

例如:我在导入matplotlib时出现编码问题,找到编码出错的文件为__init__.py

我们只需在这个__init__.py文件中加入上面三行指令,以后使用matplotlib的py脚本就不会出现此编码问题。

找到__init__.py文件可通过在matplotlib处右键,使用Anaconda的Goto Definition功能。当然也可通过其他方式找到此文件。

__init__.py:


版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/Mr_sdhm/article/details/79116981
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 22:33:21
  • 阅读 ( 791 )
  • 分类:

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢