python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法

时间:2021-05-22

Python的字符集处理实在蛋疼,目前使用UTF-8居多,然后默认使用的字符集是ascii,所以我们需要改成utf-8
查看目前系统字符集
复制代码 代码如下:
import sys
print sys.getdefaultencoding()

执行:
复制代码 代码如下:
[root@lee ~]# python a.py
ascii

修改成utf-8
复制代码 代码如下:
import sys

sys.setdefaultencoding('utf-8')

print sys.getdefaultencoding()

执行:
复制代码 代码如下:
[root@lee ~]# python a.py
Traceback (most recent call last):
File "a.py", line 4, in <module>
sys.setdefaultencoding('utf-8')
AttributeError: 'module' object has no attribute 'setdefaultencoding'
提示:AttributeError: 'module' object has no attribute 'setdefaultencoding'?

后来经过查找相关资料,才发现早期版本可以直接sys.setdefaultencoding('utf-8'),新版本需要先reload一下
复制代码 代码如下:
import sys

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

print sys.getdefaultencoding()

执行
复制代码 代码如下:
[root@lee ~]# python a.py
utf-8

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章