我无法安装numpy,因为它找不到python 2.7,虽然我已经安装了python

时间:2012-03-13 12:51:31

标签: python numpy

我无法安装numpy,因为它找不到python 2.7,但是我已经安装了python。

我有消息:“需要Python版本2.7,在注册表中找不到”

有解决我的问题吗?

7 个答案:

答案 0 :(得分:54)

这对于依赖或寻找以前安装的64位核心应用程序(例如Python x64)的安装程序(例如Numpy)来说并不罕见。问题和解决方案很容易解释。

<强>问题 恕我直言这是已经安装的64位应用程序的开发人员的一个错误,通过将注册表项放在32位节点而不是(或除了)64位节点。实际上,安装程序的开发人员也可以对其进行编码以查看两个位置,而不是仅仅假设64位应用程序注册表项将位于\ Wow6432Node中,以避免原始开发人员的这个问题。监督;但是,如果安装程序根据注册表项的位置决定应用程序是32位还是64位(这不是一个好主意),这可能会有问题。

有时使用64位应用程序将在...中创建一个注册表项

HKLM\SOFTWARE\[applicaion name]

但是,在...

中未创建相应的注册表项
HKLM\SOFTWARE\Wow6432Node\[application name]

<强>解 使用任何应用程序解决此问题的最简单方法是......

  1. 打开注册表编辑器(START - &gt; RUN - &gt; regedit)
  2. 导航到HKEY_LOCAL_MACHINE \ SOFTWARE \ [应用程序名称](在本例中为#34; Python&#34;)
  3. 右键单击应用程序(&#34; Python&#34;)
  4. 选择&#34;导出&#34;并将文件保存为&#34; [应用程序名称] .reg&#34; (&#34; Python.reg&#34)
  5. 使用您选择的编辑器(我喜欢Notepad ++)打开保存的文件
  6. 在&#34之后的每个条目上; [HKEY_LOCAL_MACHINE \ SOFTWARE&#34;但在\ [应用名称](&#34; \ Python&#34;)之前,添加&#34; \ Wow6432Node&#34; (显然没有引号)
  7. 将编辑后的文件另存为&#34; [应用程序名称] _64.reg&#34; (Python_64.reg&#34)
  8. 关闭编辑器并双击新创建的文件,回答&#34;是&#34;到注册表编辑器验证弹出窗口。
  9. 现在,你应该在HKLM \ SOFTWARE \ [应用程序名称]和HKLM \ SOFTWARE \ Wow6432Node \ [应用程序名称]中有重复的条目。或者,您可以在HKLM \ SOFTWARE \ Wow6432Node \ [应用程序名称]下手动创建所有缺少的条目,以匹配HKLM \ SOFTWARE \ [应用程序名称]中的内容,但这真的很长。

    当您重新运行Numpy安装程序时,它现在可以正确检测您的64位Python安装。

    <强> CAVEAT 这一切都有一个警告。

    HKLM \ SOFTWARE和HKLM \ SOFTWARE \ Wow6432Node中的重复条目不是问题,不会影响应用程序的正常运行;但是,由于开发人员错过了创建Wow6432Node注册表项,因此不太可能在两个位置填充修改注册表项的任何未来更新。您可能偶尔需要再次执行此操作或手动将新的注册表项添加到Wow6432Node以保持它们的一致性。您可能遇到的一个示例是安装Python模块,在HKLM \ SOFTWARE \ Python \ PythonCore \ 2.x \ Modules \下添加一个条目。您可以只导出添加的条目并编辑.reg文件以包含&#34; \ Wow6432Node&#34;只导出整个\ Python节点并编辑所有条目(导入已编辑的.reg文件将覆盖现有条目),或者只是手动添加新条目 - 无论你看起来多么简单。

答案 1 :(得分:23)

你应该安装Python 32bit,或者使用来自this unofficial site的python 64bit的numpy包

答案 2 :(得分:7)

此问题也会影响32位Python上的32位numpy。

原因是numpy安装程序假设您在安装Python时选择“安装所有用户”,即Python安装程序使用机器范围 HKEY_LOCAL_MACHINE 注册表的一部分。 如果您选择“仅为我安装”,则这些注册表设置位于注册表的用户可写部分, * HKEY_USERS _ * (又名 HKEY_CURRENT_USER )。 numpy安装程序看不到那里,因此认为没有安装Python。

解决方案: 将密钥 HKEY_CURRENT_USER \ Software \ Python 和所有子密钥复制到 HKEY_LOCAL_MACHINE \ Software 下的相应位置(您可以使用regedit导出,然后查找&amp; replace in文本文件,然后导入)。或者,重新安装Python并选择“所有用户”。

答案 3 :(得分:2)

你必须使用python和numpy的版本。两者都需要是32位或64位。

答案 4 :(得分:1)

你应该安装python 2.7 32bit。数值python windows版本都是32位。

答案 5 :(得分:0)

从您的系统中卸载Python并再次重新安装。然后从此站点下载numpy:http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy

如果您想检查系统上的numpy版本,请在IDE上编写以下代码:

import numpy
numpy.version.version

希望这会有所帮助!

答案 6 :(得分:0)

  1. 运行安装程序

  2. 出现错误时点击取消

  3. 点击显示详细信息

  4. 它会在列表Execute: C:\.........\numpy-1.7.1-sse3.exe的末尾说明,转到该文件夹​​,抓取该文件并将其放入C:\python27\

  5. 一旦进入所述文件夹,就从该位置运行它。安装程序将运行并找到它。