Spyder - Python - UnicodeDecodeError:' ascii'编解码器无法解码

时间:2015-08-13 17:05:10

标签: python spyder

TL,DR :在Spyder中运行时,python文件会遇到 UnicodeDecodeError ,但是当我在命令行中运行它时,它会起作用。

我下载了一个包含后缀树的C实现的Python module。在构建之后,它在Spyder中运行但是我得到以下错误:

  

RUNFILE(' F:/src/suffix_tree-2.1/build/lib.win32-2.7/suffix_tree.py' ;,   WDIR =' F:/src/suffix_tree-2.1/build/lib.win32-2.7')   回溯(最近一次调用最后一次):

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ interactiveshell.py&#34 ;,   第3052行,在run_code中       self.showtraceback()

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ interactiveshell.py&#34 ;,   1851年,在showtraceback       value,tb,tb_offset = tb_offset)

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ ultratb.py&#34 ;,   第1240行,在structured_traceback中       self,etype,value,tb,tb_offset,number_of_lines_of_context)

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ ultratb.py&#34 ;,   第1157行,在structured_traceback中       self,etype,value,elist,tb_offset,number_of_lines_of_context

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ ultratb.py&#34 ;,   第511行,在structured_traceback中       lines ='' .join(self._format_exception_only(etype,value))

     

文件   " G:\ IDE \蟒\阿纳康达\ lib中\站点包\ IPython的\芯\ ultratb.py&#34 ;,   第623行,在_format_exception_only中       Colors.Normal,s))

     

UnicodeDecodeError:' ascii'编解码器不能将字节0xb2解码到位   20:序数不在范围内(128)

在导入_suffix_tree.pyd之后,即使在执行任何其他操作之前,也会出现此错误。

但是,如果我在命令行(cmd)中运行该文件,它将成功运行而不会出现任何错误。

PS:我使用的是Windows,我的用户名是ASCII字符。

1 个答案:

答案 0 :(得分:1)

您可能正在尝试打开以不同格式编码的文件,您应该检查它并使用以下命令设置Spyder。

import sys  
reload(sys)  
sys.setdefaultencoding('utf8')

如果这不起作用,请检查程序的Python内核版本。您可以尝试在Spyder 2中运行Python 3代码。