python錯誤:AttributeError: 'module' object has no attribute 'setdefaultencoding'問題的解決方法

Python的字符集處理實在蛋疼,目前使用UTF-8居多,而後默認使用的字符集是ascii,因此咱們須要改爲utf-8
查看目前系統字符集python

import sys
print sys.getdefaultencoding()


執行:code

[root@lee ~]# python a.py 
ascii


修改爲utf-8utf-8


 

import sys
 
sys.setdefaultencoding('utf-8')
 
print sys.getdefaultencoding()


執行:ci

複製代碼代碼以下:get

[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'?ast


後來通過查找相關資料,才發現早期版本能夠直接sys.setdefaultencoding('utf-8'),新版本須要先reload一下class

複製代碼代碼以下:import

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


執行module

複製代碼代碼以下:object

[root@lee ~]# python a.py 
utf-8
相關文章
相關標籤/搜索