我有一个Win 7韩国版(韩国版,不是语言包的终极版)。当我尝试导入PyQt4时,我在Maya中收到此错误:
from PyQt4 import QtGui
Error: Error in maya.utils._guiExceptHook:
File "C:\Program Files\Autodesk\Maya2012\Python\lib\site-packages\maya\utils.py", line 282, in formatGuiException
exceptionMsg = unicode(exceptionObject.args[0])
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc1 in position 17: ordinal not in range(128)
所以在我的英语win7上,这不会发生。我一直在阅读这里的问题和python中unicode的一些网站。我意识到这种问题应该在某个地方处理,但是我没有编写库,所以我现在无能为力。
我假设此错误来自操作系统的语言,如果是这样,是否可以解决此问题?我的Maya版本是英文的,但韩国似乎还有其他的东西?
任何想法?
由于
答案 0 :(得分:2)
您可能想尝试使用sys.setdefaultencoding
。要使用它,您可能需要在site.py
或sitecustomize.py
文件中对其进行调用,因为正如文档所述:
site
模块使用后,它将从sys
模块的命名空间中删除。
我首先尝试utf-8
,因为C1
是一个有效的UTF-8起始字节,而UTF-8是有意义的。如果这不起作用,那么我认为有一些韩国特定的编码,但不幸的是,我对它们知之甚少。如果UTF-8不起作用,则this list of encodings supported by Python表示您可能需要尝试euc_kr
,iso2022_kr
,cp949
,johab
或{{1} }。