Python NLTK导入错误(Windows)

Python NLTK导入错误(Windows),python,windows,unicode,import,nltk,Python,Windows,Unicode,Import,Nltk,IPython在尝试导入NLTK时抛出错误。错误是: UnicodeDecodeError:“ascii”编解码器无法解码第11位的字节0xe3:序号不在范围内(128) 不需要代码共享,因为它在第一行(导入)时崩溃。我已经尝试将64位更改为32位,但仍然会遇到相同的错误 我发现一个线程报告了同样的问题(),但它对我没有帮助,因为我无法升级Python版本以避免兼容性问题(这是一个组项目) 我已经检查了模块当前是否已安装,并且已经尝试重新安装 有什么想法吗?提前感谢您的提示。您的ANSI代码页可

IPython在尝试导入NLTK时抛出错误。错误是:

UnicodeDecodeError:“ascii”编解码器无法解码第11位的字节0xe3:序号不在范围内(128)

不需要代码共享,因为它在第一行(导入)时崩溃。我已经尝试将64位更改为32位,但仍然会遇到相同的错误

我发现一个线程报告了同样的问题(),但它对我没有帮助,因为我无法升级Python版本以避免兼容性问题(这是一个组项目)

我已经检查了模块当前是否已安装,并且已经尝试重新安装


有什么想法吗?提前感谢您的提示。

您的ANSI代码页可能是1252,其中
'\xe3'
u'\N{带波浪号的拉丁文小写字母a'
,来自您的名字“João”。最简单的解决方案是将您的用户名(以及您的配置文件目录)更改为仅使用ASCII字符的名称由于Microsoft帐户问题,我无法更改我的用户名。你知道其他解决问题的方法吗?感谢您的帮助。他们在中使用了
unicode\u文本
,这意味着失败的调用实际上是
os.path.expanduser(u'~/')
。这迫使解释器使用默认编码(即ASCII)对环境变量中的ANSI字节字符串进行解码。有很多方法可以更改默认编码,但我不建议这样做。我会使用一个函数来包装
ntpath.expanduser
,该函数可以解决这个问题。将原始文件保存并调用为
ntpath.\u expanduser
。在包装器中,当
path
参数为
unicode
时,将其编码为
'mbcs'
,然后将结果解码为
'mbcs'
。但是允许
str
的实例不经修改地通过。