Как установить SciPy в 64-битной Windows? - PullRequest
64 голосов
/ 04 октября 2009

Как мне установить 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 NumPy-1.3.0rc2-win32-СУПЕРПАК-python2.6.exe ( URL прямой загрузки , 4782592 байт). Запуск этого установщика привело к тому же сообщению "Не удается установить. Python Требуется версия 2.6, которая не найдена в реестре. " Обновление : на самом деле работает установщик NumPy - см. Начало вопроса.

Шаг 2

Попробовал установить NumPy другим способом. Скачал зип пакет numpy-1.3.0rc2.zip ( 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 строк стенограмма (230 КБ).

Это, похоже, сработало. Теперь я могу сделать это в 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 байт), распаковал zip-файл обычным способом временный каталог, 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 ГБ ОЗУ, 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.
>>>

Значение PATH, результат из 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\

Ответы [ 16 ]

63 голосов
/ 22 января 2010

Неофициальные 64-разрядные установщики для NumPy и SciPy доступны по адресу http://www.lfd.uci.edu/~gohlke/pythonlibs/

Убедитесь, что вы загружаете и устанавливаете пакеты (такие как колеса), которые соответствуют вашей CPython версии и bitness (т.е. cp35 = Python v3.5 ; win_amd64 = x86_64).

Вы захотите сначала установить NumPy ; Из командной строки CMD с правами администратора для общесистемной установки (также называемой «Program Files») установите:

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

или включает флаг --user для установки в папку приложения текущего пользователя (обычно %APPDATA%\Python в Windows) из non -admin 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> соответствующим образом, если вы скопируете и вставите любой из этих примеров. А также то, что вы должны использовать пакеты numpy & scipy по ссылке выше ifd.uci.edu (иначе вы получите ошибки, если попытаетесь смешать и сопоставить несовместимые пакеты - сначала удалите все конфликтующие пакеты [т.е. pip list] ).

32 голосов
/ 06 октября 2009

Краткий ответ: поддержка Windows 64 bit все еще продолжается. Суперпакет определенно не будет работать на 64-битном Python (но он должен прекрасно работать на 32-битном Python, даже на 64-битной Windows).

Основная проблема с Windows 64 bit заключается в том, что сборка с помощью mingw-w64 на данный момент нестабильна: это может быть наша ошибка (разработчиков NumPy), ошибка Python или mingw-w64. Скорее всего, сочетание всех этих :). Поэтому вы должны использовать проприетарные компиляторы: все, кроме компилятора Microsoft, случайным образом приводит к сбою NumPy; для компилятора Фортрана следует использовать ifort. На сегодняшний день исходный код как NumPy, так и SciPy можно скомпилировать с помощью Visual Studio 2008 и ifort (все тесты пройдены), но его сборка все еще довольно трудна и плохо поддерживается инфраструктурой сборки NumPy.

6 голосов
/ 05 октября 2009

Как говорится в стенограмме SciPy, SciPy не должен работать на Win64:

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

Поэтому я бы предложил установить 32-битную версию Python и прекратить попытки сборки SciPy самостоятельно. Если вы все равно хотите попробовать, вам сначала нужно скомпилировать BLAS и LAPACK, как говорит PiotrLegnica. Смотрите стенограмму мест, где он искал скомпилированные версии этих библиотек.

5 голосов
/ 30 апреля 2013

WinPython - это дистрибутив с открытым исходным кодом, имеющий 64-битные NumPy и SciPy.

3 голосов
/ 17 марта 2010

Другая альтернатива: http://www.pythonxy.com/

Бесплатно и включает в себя множество вещей, предназначенных для совместной работы.

Этот человек говорит

Вы пробовали linux.pythonxy? (http://linux.pythonxy.com).

Готово 64 бита ...

Хотя я не совсем уверен, что это значит.

Обновление:

Кажется, он мертв. Сейчас я использую Anaconda , которая имеет 32-битные или 64-битные установщики.

3 голосов
/ 22 января 2010

Для полноты: Enthought имеет дистрибутив Python, который включает SciPy; однако, это не бесплатно. Предостережение: я никогда не использовал это.

Обновление: этот ответ был давно забыт, пока возмущение не вернуло меня к нему. В это время я буду вторым предложением эндолита из Анаконды , которое бесплатно.

2 голосов
/ 27 октября 2016

У меня 32-битный Python 3.5 на 64-битной машине с Windows 8.1. Я просто попробовал почти все, что я могу найти в переполнении стека, и никто не работает!

Тогда на здесь Я нашел это. Там написано:

SciPy - это программное обеспечение для математики, науки и техники.

Требуется Numpy + MKL.

Установите numpy + mkl перед установкой scipy.

мкл имеет значение !! Но никто ничего не говорил об этом раньше!

Тогда я установил мкл:

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

сработало ~ ага :) 1027 *

Подсказка: вы можете просто зайти в Google "whl_file_name.whl", чтобы узнать, где его скачать ~:)

Обновление:

После всех этих шагов вы обнаружите, что вы все еще не можете использовать SciPy в Python 3. Если вы напечатаете «import scipy», вы обнаружите, что есть сообщения об ошибках, но не волнуйтесь, есть только одна вещь, которую нужно сделать , Здесь —— Просто закомментируйте эту строку, просто и полезно.

from numpy._distributor_init import NUMPY_MKL

Обещаю, что это последнее, что нужно сделать:)

Enter image description here

PS: Перед всеми этими шагами лучше сначала установить NumPy. Это очень просто с помощью этой команды:

pip install numpy
2 голосов
/ 23 марта 2016

Страшно устанавливать такие пакеты данных Python для науки независимо в Windows. Попробуйте Anaconda (один установщик, еще 400 пакетов Python, поддержка py2 и py3). Анаконда мне очень помогает!

2 голосов
/ 04 октября 2009

Попробуйте установить Python 2.6.3 поверх 2.6.2 (это также должно добавить правильную запись реестра) или зарегистрировать существующую установку с помощью этого сценария . После этого установщик должен работать.

Для сборки SciPy требуется компилятор и библиотеки Фортрана - BLAS и LAPACK .

1 голос
/ 30 апреля 2013

Установить дистрибутив Python, http://www.python.org/download/.

Загрузите и установите дистрибутив Anaconda Python.

Сделайте ссылку на дистрибутив Anaconda Python для Python 3.3, если вы хотите, чтобы NumPy, SciPy или Matplotlib работали в Python 3.3, или просто используйте его так, чтобы иметь только функциональные возможности Python 2.7 и старше.

Сообщение в блоге Anaconda Python Distribution Python 3.3, связывающее , предоставляет более подробную информацию об Anaconda.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...