在Windows10 Pro上安装NLTK时出错

问题描述 投票:0回答:3

我想在Windows10 Pro 64位上安装NLTK。它给了我以下错误。

需要Python版本-32,这在注册表中找不到。

我在我的机器上安装了python 3.5.0(32位),并在路径变量中添加了以下内容。 C:\ Users \ MYNAME \ AppData \ Local \ Programs \ Python \ Python35-32 \ Scripts \ C:\ Users \ MYNAME \ AppData \ Local \ Programs \ Python \ Python35-32 \

任何人都可以帮我继续安装NLTK吗?

windows-10 nltk
3个回答
1
投票

如果您是Python的新手,使用预先组装的Python Distribution可能很简单(即使更大)。

例如:Python 3.5中的Anaconda-4.2.0“味道”应该在框中有nltk https://docs.continuum.io/anaconda/pkg-docs


0
投票

我没有运行Windows 10,而是运行Windows 8.但是,我想分享我最近几天在64位Windows平台上安装NLTK时遇到的问题,因为我相信它可能适用于这里(和一个数字)其他类似的问题)。

NLTK,最新版本nltk-3.2.2.win32(msi安装程序)不会安装本地64位Python主机(换句话说,如果您使用的是Windows 64平台,之前决定安装64位版本Python)。但是,它没有告诉你。它抱怨Python 32是必需的,无法找到,然后不允许您输入Python安装的路径(我的是ActivePython-2.7.10.12-win64-x64)。有一篇很好的文章描述了Fix for NLTK install on Win 64的大部分解决方案。

简而言之,您可以卸载Python 64位安装并安装32位,这是NLTK真正想要的,或者您可以尝试使用pip install pyyaml nltk在本地构建NLTK安装(请参阅上面链接的帖子)。

我的贡献是补充一点,虽然你最终会安装NLTK,你可能仍然无法正确构建pyyaml,因为它必须编译和构建ac代码扩展(一个Windows dll,对于c中的Python扩展,它将是一个pyd扩展而不是dll in如果名称与系统某处的另一个dll相交,则可以避免额外的混淆。 Windows系统有一个令人困惑的用户目录路径数组和编译器(即使你安装了MSVC并知道如何使用它)也无法找到必要的库文件,通常是从distutils调用它时(调用的python构建帮助程序之一) )。您可以在命令控制台会话中保存错误输出,并尝试在本地路径上手动指向相应的配置文件,但在这种情况下更简单的方法是简单地获取pyyaml正在尝试构建的正确编译文件。上面的安装过程通常会继续并将pyyaml python文件(.py文件)放在您的site-packages目录中(在您的本地Python安装目录下),所以您需要做的就是获取已编译的文件,命名为_yaml.pyd,并将其插入您的yaml目录(这是我在site-packages目录中创建的安装过程),其中包含所有pyyaml Python文件。

您可以在Python Packages, PyYAML 3.12获取必要的文件。在该页面,您将看到可用的PyYAML包列表。您应该选择与您的Python,Windows和NLTK要求一致的那个,在本例中是PyYAML-3.12-cp27-cp27m-win_amd64.whl(因为我在64位Windows平台上运行64位Python;如果你运行32位Python然后使用win32 whl)。需要更多解释。这看起来更令人头痛,但实际上并非如此。 whl文件只是一个zip包,您可以使用7-Zip或系统上的任何zip提取器提取(右键单击下载的文件以探索可能性)。只需在桌面等上提取它,你会发现里面有三个项目。其中两个是文件夹,您可以忽略(您可能要验证yaml文件夹与您在site-packages目录中使用pip安装的文件夹具有相同的.py文件,但是如果您要安装最新的NTLK应该是真的)。第三项是您的目标_yaml.pyd。将其复制或移动到您的... site-packages / yaml /目录(我的是“C:\ Python27 \ Lib \ site-packages \ yaml”)。不要担心所有其他文件都有.py或.pyc文件。它会在家里。这个PyYAML软件包的作者Kirill Simonov比平常更容易使用这个c扩展,为你提供了.py文件(cyaml.py)的本地钩子。 cyaml.py通过“from _yaml import CParser,CEmitter”导入所有c代码,因此很高兴找到你刚刚复制的_yaml.pyd,而不会有任何烦恼。我在执行了这个策略之后昨天运行了NLTK单元测试,并且在NLTK网站上提供了一些测试,并且它非常高兴(只需要下载更多的语料库等等,但是如果你的第一个很快就会发现import nltk works)。

我注意到我已经使用过这个chicanery来避免在其他几个场合安装过程,当我需要的只是一个轮组件时,即我只是得到了合适的轮子,提取文件并将它们放在Python安装中(提到的东西)作为Wheel包格式的一个有吸引力的特征)。


-1
投票

您可以尝试以管理员身份打开cmd并粘贴此命令:

"C:\Python\Python36-32\Scripts\pip3" install nltk

注意:在您的情况下,python的安装目录可能不同。在我的情况下命令是

"C:\Users\Faith\AppData\Local\Programs\Python\Python36-32\Scripts" install nltk  
© www.soinside.com 2019 - 2024. All rights reserved.