如何在64位Windows上安装SciPy?
我如何在我的系统上安装SciPy?
对于NumPy部分(SciPy依赖于),实际上是64位Windows的安装程序: numpy-1.3.0.win-amd64-py2.6.msi (是直接下载URL,2310144字节)。
运行SciPy超级包安装程序会在对话框中显示以下消息:
无法安装。 需要Python版本2.6,这在registry中找不到。
我已经安装了Python 2.6.2(并在其中安装了一个可用的Django安装),但我不知道任何registry故事。
registry项似乎已经存在:
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( 直接下载URL ,4782592字节)。 运行这个安装程序会产生相同的信息:“无法安装,需要Python 2.6,这在registry中找不到。” 更新 :实际上NumPy的安装程序是有效的 – 请参阅问题的开头部分。
第2步
试图以另一种方式安装NumPy。 下载压缩包numpy-1.3.0rc2.zip( 直接下载url ,2404011字节),以正常的方式解压到一个临时目录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行长的logging (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超级包安装程序,scipy-0.7.1rc3-win32-superpack-python2.6.exe( 直接下载URL ,45597175字节)。 运行此安装程序会导致消息在开头列出
步骤4
试图以另一种方式安装SciPy。 下载压缩包scipy-0.7.1rc3.zip( 直接下载URL ,5506562字节),以正常的方式解压缩到临时目录D:\ temp7 \ scipy-0.7.1(其中setup.py和README .txt是)。 然后我打开了一个命令行窗口,并且:
d: cd D:\temp7\scipy-0.7.1 setup.py install
这并没有达到很多 – 这是一个成绩单 (约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的值:
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\
我还没有尝试过,但是您可能要下载这个版本的可移植Python 。 它带有运行在Python 2.5.4上的Scipy-0.7.0b1。
NumPy和SciPy的非官方64位安装程序可在http://www.lfd.uci.edu/~gohlke/pythonlibs/上find
确保你下载并安装了匹配你的CPython版本和位(即cp35
= Python v3.5; win_amd64
= x86_64)的软件包( win_amd64
)。
您将首先安装NumPy ; 从具有系统范围(也称为Program Files)的pipe理员权限的CMD提示安装:
C:\>pip install numpy‑<version>+mkl‑cp<ver-spec>‑cp<ver-spec>m‑<cpu-build>.whl
或者从非pipe理员 CMD提示中包含--user
标志以安装到当前用户的应用程序文件夹(通常为Windows上的%APPDATA%\Python
):
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
如果复制并粘贴任何这些示例,请不要忘记正确地replace<version>
, <ver-spec>
和<cpu-build>
。 此外,您必须使用上面的ifd.uci.edu链接中的numpy&scipy软件包(否则,如果您尝试混合和匹配不兼容的软件包,请首先卸载任何冲突的软件包[即pip list
]) 。
简短的回答:Windows 64支持目前仍在进行中。 这个超级包肯定不能用在64位的python上(但是它应该可以在32位python上运行,即使在windows 64上也是如此)。
windows 64的主要问题是用mingw-w64编译的这个版本在这个时候是不稳定的:它可能是我们的(numpy devs)错误,python的错误或者mingw-w64。 最有可能的是所有这些:)的组合。 所以你必须使用专有的编译器:除了MS编译器之外的任何东西随机崩溃numpy; 对于Fortran编译器,ifort是使用的。 截至今天,numpy和scipy源代码都可以用VS 2008和ifort(所有的testing通过)来编译,但是构build它仍然是一个很痛苦的事情,而且numpy构build基础结构也不能很好地支持它。
正如SciPy的抄本告诉你的,SciPy并不是真的应该在Win64上工作:
Warning: Windows 64 bits support is experimental, and only available for testing. You are advised not to use it for production.
所以我build议安装Python的32位版本,并停止尝试自己构buildSciPy。 如果你仍然想尝试,你首先需要编译BLAS和LAPACK,正如PiotrLegnica所说。 查看成绩单的地方,它正在寻找这些库的编译版本。
WinPython是一个开源分布,具有64位numpy和scipy。
另一种select: http : //www.pythonxy.com/
免费,包括许多东西意味着一起工作顺利。
这个人说
你有没有尝试linux.pythonxy? ( http://linux.pythonxy.com )。
这是64位准备…
虽然我不太清楚这意味着什么。
更新:
这似乎已经死了。 我现在使用Anaconda ,它有32位或64位安装程序。
为了完整: Enthought有一个包含SciPy的Python发行版; 但是,这不是免费的。 警告:我从来没有用过它。
更新:这个答案早已被忘记,直到有一次upvote把我带回来。 在这个时候,我会第二个endolith的免费的python 的build议 。
尝试在你的2.6.2上安装Python 2.6.3(这也应该添加正确的registry项),或者使用这个脚本注册你现有的安装。 安装程序应该在那之后工作。
构buildSciPy需要一个Fortran编译器和库–BLAS和LAPACK 。
在Windows上独立安装这些Python数据科学软件包是非常糟糕的。 尝试Anaconda (一个安装程序,400多个Python软件包,py2&py3支持)。 水蟒真的帮了我很多!
我在一个64位的win8.1机器上有一个32位的python3.5,我只是尝试几乎所有的方式,我可以findStackoverflow,没有人工作!
然后在这里 :我发现它说:
SciPy是math,科学和工程软件。
需要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”知道在哪里下载它:)
更新:
所有这些步骤后,你会发现你仍然不能在python3中使用scipy,如果你打印“导入scipy”,你会发现有错误信息,但不要担心,只有一件事情要做。 这里 -只是注释掉那条线,简单而有用。
from numpy._distributor_init import NUMPY_MKL
我保证这是最后的事情:)
PS:在所有这些步骤之前,您最好先安装numpy,使用命令非常简单:
pip install numpy
安装Python发行版http://www.python.org/download/ 。
下载并安装Anaconda Python分发。
如果你想让Numpy,Scipy或者Matplotlib在py3.3中工作,或者只是像py2.7或者更旧的版本那样使用它,你可以使用Anaconda Python分发链接到py3.3。
以下链接提供了有关Anaconda的更多详细信息: http : //infodatatech.blogspot.com/2013/04/anaconda-python-distribution-python-33.html 。
我在32位机器上遇到同样的错误。 我通过注册我的Python安装来修复它,使用脚本:
http://effbot.org/zone/python-register.htm
脚本也可能会使64位超级包安装程序工作。
你可以下载一个科学的python发行版。 其中一个在这里提到: https : //scipy.org/install.html
或者从这里的 whl文件安装pip,如果上述不是你的select。
好吧,已经有很多人说过了,但是,如果没有以上的工作,你可以尝试;
https://www.scipy.org/install.html
根据他们;
对于大多数用户,特别是在Windows上,安装SciPy堆栈的最简单的方法是下载这些Python发行版之一,其中包括所有的密钥包:
Anacond :SciPy堆栈的免费发行。 支持Linux,Windows和Mac。
Enthought Canopy:免费和商业版本包括核心SciPy堆栈包。 支持Linux,Windows和Mac。
Python(x,y)基于Spyder IDE的免费发行版,包括SciPy堆栈。 仅限Windows。
WinPython:包含SciPy堆栈的免费发行版。 仅限Windows。
Pyzo:基于Anaconda和IEP交互式开发环境的免费发行。 支持Linux,Windows和Mac。
注意:不幸的是,我目前无法发布超过2个链接,所以请转到scipy.org链接,对我来说,Anaconda确实解决了这个问题。 请记住在下载之前检查一下(32/64位)版本,然后将你的编译器重新调整到你安装的Python发行版安装的python。
Okey,在这里,我将分享我已经做了什么安装scipy
在我的Windows PC上没有命令。
我的电脑configuration是
windows-7 64-bit & python 2.7
- 首先我从http://www.lfd.uci.edu/~gohlke/pythonlibs/ (这个版本匹配你的configurationEX:cp27 ==> python2.7&cp35 ==> 3.5)
- 其次,我使用
7zip
压缩文件(也可以使用任何类似winrar的zipper) - 第三我复制我提取的
scipy
文件夹,并将其粘贴到C:\Python27\Lib\site-packages
(或放在你的电脑的确切位置,如..\..\Lib\site-packages
)
注意:在安装scipy之前,必须先安装numpy 。
几天后我find了这个解决scheme。 首先你要安装哪个python版本?
如果你想要Python 2.7版本:
步骤1:
SciPy的-0.19.0-cp27-cp27m-win32.whl
SciPy的-0.19.0-cp27-cp27m-win_amd64.whl
numpy的-1.11.3 + MRL-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 + MRL-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 + MRL-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 + MRL-CP36-cp36m-win32.whl
numpy的-1.11.3 + MRL-CP36-cp36m-win_amd64.whl
链接: 点击
完成安装后,转到您的目录。
例如我的目录:
cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts> pip install [where/is/your/downloaded/scipy_whl.]
第2步:
NumPy的+ MKL
再次从基于python版本的网站:
之后在Script文件夹中再次使用相同的东西
cd C:\Users\asus\AppData\Local\Programs\Python\Python35\Scripts> pip3 install [where/is/your/downloaded/numpy_whl.]
并在python文件夹中testing它。
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