Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spyder-Python-UnicodeCodeError:';ascii';编解码器可以';破译_Python_Spyder - Fatal编程技术网

Spyder-Python-UnicodeCodeError:';ascii';编解码器可以';破译

Spyder-Python-UnicodeCodeError:';ascii';编解码器可以';破译,python,spyder,Python,Spyder,TL,DR:python文件在Spyder中运行时会遇到UnicodeDecodeError,但在命令行中运行时会正常工作 我下载了一个Python,它封装了后缀树的C实现。构建后,它在Spyder中运行,但我得到以下错误: 运行文件('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') 回溯(最近一次呼叫最后一次): 文件

TL,DR:python文件在Spyder中运行时会遇到UnicodeDecodeError,但在命令行中运行时会正常工作


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

运行文件('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\python\Anaconda\lib\site packages\IPython\core\interactiveshell.py”, 运行代码中的第3052行 self.showtraceback()

文件 “G:\IDE\python\Anaconda\lib\site packages\IPython\core\interactiveshell.py”, 第1851行,在showtraceback中 值,tb,tb\U偏移=tb\U偏移)

文件 “G:\IDE\python\Anaconda\lib\site packages\IPython\core\ultratb.py”, 第1240行,在结构化_回溯中 self、etype、value、tb、tb\u偏移量、行数(上下文)

文件 “G:\IDE\python\Anaconda\lib\site packages\IPython\core\ultratb.py”, 第1157行,在结构化_回溯中 self、etype、value、elist、tb\u偏移量、行数\u上下文

文件 “G:\IDE\python\Anaconda\lib\site packages\IPython\core\ultratb.py”, 第511行,在结构化_回溯中 行=“”.join(self.\u格式\u例外\u仅(etype,value))

文件 “G:\IDE\python\Anaconda\lib\site packages\IPython\core\ultratb.py”, 第623行,仅为_格式_例外 颜色。正常,s)

UnicodeDecodeError:“ascii”编解码器无法解码位置中的字节0xb2 20:序号不在范围内(128)

此错误在导入_suffix_tree.pyd之后立即出现,甚至在任何其他操作之前

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


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

您可能试图打开一个以不同系统格式编码的文件,您应该检查它并使用下面的命令设置Spyder

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

如果这不起作用,请检查程序的Python内核版本。您尝试在Spyder 2中运行Python 3代码时会收到此消息。

不知道这是否有帮助,可能没有,但您是否尝试过将#--coding:utf-8--放在文件的最顶端(导入之前)?不幸的是,没有-(我有(我的用户名有口音)。我用Anaconda3解决了这个问题。谢谢@clemtoy。我认为这在Spyder中是个问题,因为我的文件在PyCharm中工作。我也会尝试Anaconda3。