2009-10-04 181 views
63

如何在我的系统上安装SciPy?如何在64位Windows上安装SciPy?

对于NumPy部分(即SciPy依赖),实际上有一个用于64位Windows的安装程序:numpy-1.3.0.win-amd64-py2.6.msi(是直接下载URL,2310144字节)。

运行在此 消息SciPy的superpack安装程序导致一个对话框:

无法安装。需要Python版本2.6,这在注册表中找不到。

我已经安装了Python 2.6.2(以及一个正在运行的Django安装 ),但我不知道任何注册表故事。

的条目似乎是注册表已经存在:

REGEDIT4 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python] 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore] 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6] 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\Help] 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\Help\Main Python Documentation] 
@="D:\\Python262\\Doc\\python262.chm" 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\InstallPath] 
@="D:\\Python262\\" 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\InstallPath\InstallGroup] 
@="Python 2.6" 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\Modules] 

[HKEY_LOCAL_MACHINE\SOFTWARE\Python\PythonCore\2.6\PythonPath] 
@="D:\\Python262\\Lib;D:\\Python262\\DLLs;D:\\Python262\\Lib\\lib-tk" 

我迄今所做的:

步骤1

下载的NumPy的superpack安装 numpy的-1.3 .0rc2-win32-superpack-python2.6.exe (direct download URL,4782592 by TES)。运行此安装程序 导致了“无法安装。Python 版本2.6所需的相同的消息,这在注册表中找不到。”。 更新:实际上NumPy的安装程序有效 - 请参阅问题的开头部分。

步骤2

试图以另一种方式来安装NumPy的。下载的压缩 包numpy-1.3.0rc2.zip(direct download URL,2404011个字节), 萃取以正常方式zip文件到一个临时目录 ,d:\ temp7 \ numpy的-1.3.0rc2(其中setup.py和 README.txt是)。然后我打开一个命令行窗口,然后:

d: 
cd D:\temp7\numpy-1.3.0rc2 
setup.py install 

这跑了很长一段时间,也包括使用cl.exe时 (Visual Studio中的一部分)。这里有近5000行的长度 transcript(230 KB)。

这似乎工作。我现在可以做到这一点在Python:

import numpy as np 
np.random.random(10) 

这个结果:

array([ 0.35667511, 0.56099423, 0.38423629, 0.09733172, 0.81560421, 
     0.18813222, 0.10566666, 0.84968066, 0.79472597, 0.30997724]) 

步骤3

下载SciPy的superpack安装,SciPy的-0.7.1rc3- Win32的superpack -python2.6.exe(direct download URL,45597175 字节)。运行该安装程序导致年初

步骤4

试图以另一种方式来安装SciPy的上市消息 英寸下载zip 包scipy-0.7.1rc3.zip(direct download URL,5506562 字节),以正常的方式解压缩到临时目录D:\ temp7 \ scipy-0.7.1(其中setup.py 和README.txt是)。然后我打开一个命令行窗口,然后:

d: 
cd D:\temp7\scipy-0.7.1 
setup.py install 

这并没有取得太大的 - 这里是一个transcript(约95 线)。

而失败:

>>> import scipy as sp2 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ImportError: No module named scipy 

平台:Python的2.6.2安装在目录d:\ Python262, Windows XP 64位SP2中,8 GB RAM,Visual Studio 2008的 专业版安装。

安装的Python的启动画面是:

Python 2.6.2 (r262:71605, Apr 14 2009, 22:46:50) [MSC v.1500 64 bit (AMD64)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> 

路径值,从SET导致命令行窗口:

Path=D:\Perl64\site\bin;D:\Perl64\bin;C:\Program Files (x86)\PC Connectivity Solution\;D:\Perl\site\bin;D:\Perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\Program Files (x86)\ATI Technologies\ATI.ACE\Core-Static;d:\Program Files (x86)\WinSCP\;D:\MassLynx\;D:\Program Files (x86)\Analyst\bin;d:\Python262;d:\Python262\Scripts;D:\Program Files (x86)\TortoiseSVN\bin;D:\Program Files\TortoiseSVN\bin;C:\WINDOWS\system32\WindowsPowerShell\v1.0;D:\Program Files (x86)\IDM Computer Solutions\UltraEdit\ 
+0

还有很多其他的包的位置:http://www.lfd.uci.edu/~gohlke/pythonlibs/,但我没有看到一个名为“SciPy的”。我看到“ScientificPython”和SciPy子包,但不是SciPy本身。这是否意味着它在3个月后仍然不可用,还是我错过了一些东西? – endolith

+0

@endolith https://pypi.python.org/pypi/scipy/0.7.0 – Inversus

+0

@Inversus:http://www.lfd.uci.edu/~gohlke/pythonlibs/#scipy – endolith

回答

1

我还没有尝试过,但您可能要下载this versionPortable Python。它带有在Python 2.5.4上运行的Scipy-0.7.0b1。

+0

谢谢!它工作的很好,并且是迄今为止最简单的方式来使它工作(虽然它是一个32位版本,因此不是64位版本的SciPy)。它不会与现有的64位版本的Python安装混淆。 –

+7

尽管它解决了他的问题,但它并没有完全回答这个问题...... – Girardi

+0

对于Python 3,可以使用大致相同的版本[这里](http://portablepython.com/wiki/PortablePython3.2.5.1/) – Gaffi

2

尝试通过您的2.6安装Python 2.6.3 .2(这也应该添加正确的注册表项),或注册您现有的安装using this script。安装程序应该在那之后工作。

构建SciPy需要Fortran编译器和库 - BLASLAPACK

+0

当我运行Fredrik Lundh的脚本时,我得到:“***无法注册!***您可能有另一个Python安装!”。我用我的系统上的注册表项更新了这个问题。 (一些变量是:pythonpath:'d:\\ Python262; d:\\ Python262 \\ Lib \\; d:\\ Python262 \\ DLLs \\',regpath:'SOFTWARE \\ Python \\ Pythoncore \ \ 2.6 \\')。 –

+0

如果存在'HKEY_LOCAL_MACHINE \ SOFTWARE \ Python \ PythonCore \ 2.6 \',那么尝试删除它并重新运行它。另外 - 你运行它有足够的特权? –

+0

我试了一下,得到:“--- Python 2.6现在注册!”。但运行scipy-0.7.1rc3-win32-superpack-python2.6.exe时的结果相同。预计它将在64位版本的Python上工作吗? (是的,我有太多的特权:-)(管理员)。我知道我不应该出于安全原因。) –

6

至于SciPy的成绩单告诉你,SciPy的是不是真的应该Win64上工作:

Warning: Windows 64 bits support is experimental, and only available for 
testing. You are advised not to use it for production. 

所以我建议安装Python的32位版本,并停止试图建立SciPy的你自己。如果您仍然想尝试,您首先需要编译BLAS和LAPACK,正如PiotrLegnica所说。查看文字记录,了解它正在寻找这些库的编译版本的地方。

+0

NumPy(至少v1.5.1)不再提供此警告。 –

32

简答:Windows 64位支持目前仍在进行中。这个superpack肯定不适用于64位的Python(但它应该可以在32位Python上运行,即使在Windows 64位上也是如此)。

Windows 64位的主要问题是使用mingw-w64编译此时并不稳定:它可能是我们的(NumPy开发人员)错误,Python的错误或mingw-w64。最可能的是所有这些:)的组合。所以你必须使用专有的编译器:除了Microsoft编译器以外的任何其他东西随机崩溃NumPy;对于Fortran编译器,ifort是要使用的。截至今天,NumPy和SciPy源代码都可以通过视觉编码  Studio   2008和ifort(所有测试都通过),但构建它仍然相当痛苦,并且NumPy构建基础结构没有很好的支持。

+4

任何想法什么时候会准备好? – endolith

+0

Enthought提供64位版本的EPD,可免费用于学术用途(他们支持win64端口),并使用MKL来提高速度。还有另外一组非官方的二进制文件,链接如下 –

+2

64位是否可用于学术用途?这将是很大的 - 从网站看起来只有32位是免费的。 – robince

63

非官方的NumPySciPy 64位安装程序可在http://www.lfd.uci.edu/~gohlke/pythonlibs/

确保您下载&安装的软件包(亦称轮)符合您CPython版本和bitness(即cp35 = Python的V3是。; win_amd64 = x86_64)。

你会想要先安装NumPy;从具有管理员权限的命令提示符的系统范围(又名程序文件)安装:

C:\>pip install numpy‑<version>+mkl‑cp<ver-spec>‑cp<ver-spec>m‑<cpu-build>.whl 

或者包括--user标志,安装到当前用户的应用程序文件夹(通常%APPDATA%\Python上Windows中)从非管理员 CMD提示:

C:\>pip install --user numpy‑<version>+mkl‑cp<ver-spec>‑cp<ver-spec>m‑<cpu-build>.whl 

然后做同样SciPy的:

C:\>pip install [--user] scipy‑<version>‑cp<ver-spec>‑cp<ver-spec>m‑<cpu-build>.whl 

不要忘记更换<version><ver-spec>,并且<cpu-build>适当,如果你复制粘贴&任何这些例子。此外,您必须使用上述ifd.uci.edu链接中的numpy & scipy软件包(否则如果尝试混合&匹配不兼容的软件包 - 先卸载任何冲突的软件包即[pip list]),将会出错。

+7

这似乎是为我工作! – endolith

3

为了完整:Enthought有一个包含SciPy的Python发行版;但是,这不是免费的。警告:我从来没有用过它。

更新:这个答案早已忘记,直到upvote把我带回来。这时,我会免费拨打Anacondaendolith's suggestion

0

我在32位机器上遇到了同样的错误。我固定它通过注册我的Python安装,使用脚本在:

http://effbot.org/zone/python-register.htm

这有可能是脚本也将使64位superpack安装工作。

5

WinPython是一个开源分布,具有64位NumPy和SciPy。

2

在Windows上独立安装这些Python数据科学软件包是非常糟糕的。尝试Anaconda(一个安装程序,400多个Python软件包,py2 & py3支持)。水蟒真的帮了我很多!

2

我在64位Windows   8.1机器上有32位Python 3.5。我只是几乎在堆栈上找到几乎所有的方法 溢出,没有人工作!

然后在here我找到了。它说:

SciPy是数学,科学和工程软件。

需要numpy + mkl。

在安装scipy之前安装numpy + mkl。

mkl事项!!但之前没有人对此说过任何话!

然后我安装MKL:

C:\Users\****\Desktop\a> pip install mkl_service-1.1.2-cp35-cp35m-win32.whl 
Processing c:\users\****\desktop\a\mkl_service-1.1.2-cp35-cp35m-win32.whl 
Installing collected packages: mkl-service 
Successfully installed mkl-service-1.1.2 

然后我安装SciPy的:

C:\Users\****\Desktop\a>pip install scipy-0.18.1-cp35-cp35m-win32.whl 
Processing c:\users\****\desktop\a\scipy-0.18.1-cp35-cp35m-win32.whl 
Installing collected packages: scipy 
Successfully installed scipy-0.18.1 

它的工作〜是啊:)

一个小窍门:你可以只是谷歌“whl_file_name.whl “要知道在哪里下载〜:)

更新:

完成所有这些步骤后,您会发现您仍然无法在Python中使用SciPy   3。如果你打印“导入scipy”,你会发现有错误信息,但不用担心,只有一件事要做。 Here - 只是注释掉该行,简单而有用。

from numpy._distributor_init import NUMPY_MKL 

我保证,这是做:)

Enter image description here

PS的最后一件事:所有这些步骤之前,你最好先安装NumPy的。这是非常简单的使用这个命令:

pip install numpy 
0

好很多已经说了,但万一没有以前的答案的工作,你可以尝试;

https://www.scipy.org/install.html

据他们介绍;

对于大多数用户来说,特别是在Windows,安装SciPy的堆栈的软件包的最简单的方法就是下载这些的Python 分布,其中包括所有关键的包之一:

  • Anacond: A SciPy堆栈的免费发行。支持Linux,Windows和 Mac。
  • Enthought Canopy:免费和商业版本 包括核心SciPy堆栈包。支持Linux,Windows和 Mac。
  • Python(x,y)免费发布,包括基于Spyder IDE的SciPy 堆栈。仅限Windows。
  • WinPython:A 包括SciPy堆栈在内的免费发行。仅限Windows。
  • Pyzo:基于Anaconda和IEP interactive 开发环境的免费发行版。支持Linux,Windows和Mac。

对我来说,Anaconda确实解决了这个问题。请记住在下载之前检查一下(32/64位)版本,并重新将您的编译器调整为使用您正在安装的Python发行版安装的Python实现。

0

Okey,在这里我将分享我在Windows PC上安装SciPy而不使用命令行的操作。

我的电脑配置是Windows 7 64位和Python 2。7

  • 首先我下载所需要的软件包形成http://www.lfd.uci.edu/~gohlke/pythonlibs/(哪个版本匹配您的配置EX:cp27 ==> python2.7 & CP35 ==> 3.5)
  • 我解压使用7-Zip文件(也可用于像WinRAR任何拉链)
  • 第三我复制我萃取scipy文件夹并将其粘贴到C:\Python27\Lib\site-packages(或把它放在准确的位置是在你的电脑像..\..\Lib\site-packages

注:必须以同样的方式安装SciPy的前安装NumPy的第一

0

我在几天后发现这个解决方案。

首先,您要安装哪个Python版本?

如果你想为Python 2.7版本:

STEP 1:

SciPy的-0.19.0-cp27-cp27m-win32.whl

SciPy的-0.19。 0-cp27-cp27m-win_amd64.whl

numpy-1.11.3 + mkl-cp27-cp27m-win32.whl

numpy的-1.11.3 + MRL-cp27-cp27m-win_amd64.whl

如果你想为Python 3.4版本:

SciPy的-0.19.0-CP34-cp34m-win32的。 WHL

SciPy的-0.19.0-CP34-cp34m-win_amd64.whl

numpy的-1.11.3 + MKL-CP34-cp34m-win32.whl

numpy的-1.11.3 + MRL-CP34-cp34m-win_amd64.whl

如果你想为Python 3.5版本:

SciPy的-0.19.0-CP35-cp35m-win32.whl

SciPy的-0.19.0-CP35-cp35m-win_amd64.whl

numpy的-1.11.3 + MKL-CP35-cp35m-win32.whl

numpy-1.11.3 + mkl-cp35-cp35m-win_amd64。WHL

如果你想为Python 3.6版本:

SciPy的-0.19.0-CP36-cp36m-win32.whl

SciPy的-0.19.0-CP36-cp36m-win_amd64.whl

numpy的-1.11.3 + MKL-CP36-cp36m-win32.whl

numpy的-1.11.3 + MKL-CP36-cp36m-win_amd64.whl

链接:

完成安装后,转到您的目录。

例如,我的目录:

cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts> 
pip install [where/is/your/downloaded/scipy_whl.] 

STEP 2:

与NumPy + MKL

基于再次Python版本相同的网站:

在脚本文件夹中使用同样的事情再次经过:

cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts> 

pip3 install [where/is/your/downloaded/numpy_whl.] 

而在Python的文件夹中对其进行测试。

Python35>python 
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32 
Type "help", "copyright", "credits" or "license" for more information. 
>>> import scipy