Как установить библиотеку SciPy на Windows
Как то не очень понятно, как можно установить библиотеку ScyPy в операционной системе Windows?
Обновление: собранные wheels для Windows доступны для scipy-1.0+ на PyPI, то есть стандартную команду для установки можно использовать:
старая версия ответа:
Инструкция рекомендует, особенно на Windows, установить не один пакет, а сразу целый набор пакетов (Scientific Python distribution) такой как Anaconda.
Если вы хотите индивидуально numpy, scipy пакеты ставить, то инструкция рекомендует бинарные установщики с Christoph Gohlke сайта, которые доступны в виде бинарных wheel файлов, которые можно напрямую с помощью pip (c версией 8+) поставить:
Если у вас 64-битная Windows используйте wheel, которые в имени содержат amd64. Если у вас Python 3.6 стоит, то используйте wheel, который cp36m в названии имеет. Перед установкой scipy, необходимо поставить numpy.
Не смешивайте установку бинарных wheel файлов (таких как на Christoph Gohlke сайте) и установку через conda.
Там есть файлы с cp27, cp34, cp35, cp36. Интересно, что это обозначает?
Соглашения для имён wheel описаны в PEP-427.
Сами метки описаны в PEP-425.
Метки существуют, чтобы указать системы, где соответствующие бинарные пакеты должны работать.
cp36m—это ABI метка, которая указывает на CPython реализацию ( sys.implementation.name ), версию 3.6 ( sys.version[:3] ) как я выше упомянул, и m буква ( sys.abiflags ) в метке указывает на —with-pymalloc опцию см. PEP-3149.
И какие нужно выбирать для 32 битной Windows?
Метка платформы определяется distutils.util.get_platform() значением согласно PEP-425.
На Windows возможны три (значения из help(distutils.util.get_platform) ):
- win-amd64 (64bit Windows на AMD64 (aka x86_64, Intel64, EM64T)
- win-ia64 (64bit Windows на Itanium)
- win32 (все другие)
то есть для 32 битной Windows следует win32 метку выбрать.
Пошаговый гайд: как установить и запустить Python
Python появился относительно недавно по сравнению с «мастодонтами» вроде C и «Фортрана», но сейчас он является вторым по популярности в мире языком программирования. Разбираем стартовые шаги.
Вопреки распространенному мнению, название Python образовано не от змеи, а от британской комик-группы Monty Python с гениальным абсурдистским юмором. Она была исключительно популярна в восьмидесятые годы, когда Гвидо ван Россум начал придумывать новый язык программирования. Но все уже привыкли к логотипу с двумя питонами.
Python (Питон) — высокоуровневый язык программирования общего назначения с минималистичным синтаксисом. Создан под влиянием языка ABC для обучения программированию. Другими словами, простой в изучении, очень понятный и универсальный язык. Первая версия вышла в феврале 1991 года, это один из языков последнего поколения. Хотя Python появился относительно недавно по сравнению с «мастодонтами» вроде C и «Фортрана» , но сейчас он является вторым по популярности в мире языком программирования.
В декабре 1989 года я искал проект, который бы стал хобби на рождественские каникулы. Офис со всем оборудованием не работал, и, не имея необходимых ресурсов, я начал дорабатывать ABC , но на протяжении работы я и не думал, что может получиться что-то серьезное.
Гвидо ван Россум
создатель языка Python
Автор Python — голландский программист Гвидо ван Россум , очень веселый парень, который носит официальный титул «великодушный пожизненный диктатор» (BDFL) проекта. Это означает, что он продолжает наблюдать за своим детищем со стороны, хотя «Питон» давно ушел в свободное плавание, то есть уполз на волю, если исходить из семантики.
Какой Python выбрать
«Питонов» действительно существует много. Так называют и абстрактный интерфейс, и различные реализации (имплементации) Python. Главное, что следует понять: Python — это именно интерфейс. CPython — эталонная реализация Python от Гвидо, которая считается стандартом де-факто. Но есть и другие реализации: Jython, PyPy, IronPython .
Python активно развивается, новые версии (с добавлением/изменением языковых свойств) выходят примерно раз в два с половиной года. По этой и некоторым другим причинам на Python отсутствуют ANSI, ISO или другие официальные стандарты. Их роль выполняет CPython . Эта реализация написана на C , и часто ее называют просто Python . Поэтому вопрос «Как скачать Python?» обычно подразумевает скачивание и установку реализации СPython . Именно этот компилятор/интерпретатор распространяется с официального сайта python.org .
Что делает СPython? Он в определенном смысле компилирует исходный код Python в байткод, а затем интерпретирует этот байткод, запуская его на виртуальной машине CPython.
Например, в файлах с расширением .py хранится исходный код программ, а в файлах с расширением .pyc — «промежуточный» код, то есть скомпилированный байткод, который затем интерпретируется при выполнении в виртуальной машине CPython VM . Но, как уже упоминалось, вместо компилятора/интерпретатора CPython на языке C и виртуальной машины CPython VM можно использовать альтернативные компиляторы/интерпретаторы и виртуальные машины, написанные на других языках и лучше стыкующиеся с другими технологиями. Например, компилятор/интерпретатор Jython и виртуальную машину JVM (для платформы Java ). Или IronPython , написанный полностью на C # и предназначенный для .NET .
Исходник Python можно писать на листе бумаги или в Блокноте Windows, неважно. Цифровой код обработают все вышеупомянутые компиляторы и интерпретаторы. Пусть они сгенерируют совершенно разный байткод, но результат выполнения программы не будет отличаться.
Итак, нужен стандартный интерпретатор CPython , установим его.
InstallationВ¶
Installations methods include:
Methods differ in ease of use, coverage, maintenance of old versions, system-wide versus local environment use, and control. With pip or Anaconda’s conda, you can control the package versions for a specific project to prevent conflicts. Conda also controls non-Python packages, like MKL or HDF5. System package managers, like apt-get , install across the entire computer, often have older versions, and don’t have as many available versions. Source compilation is much more difficult but is necessary for debugging and development. If you don’t know which installation method you need or prefer, we recommend the Scientific Python Distribution Anaconda .
Scientific Python Distributions (recommended)В¶
Python distributions provide the language itself, along with the most commonly used packages and tools. These downloadable files require little configuration, work on almost all setups, and provide all the commonly used scientific python tools.
Anaconda works on Windows, Mac, and Linux, provides over 1,500 Python/R packages, and is used by over 15 million people. Anaconda is best suited to beginning users; it provides a large collection of libraries all in one.
For more advanced users who will need to install or upgrade regularly, Miniconda is a more suitable way to install the conda package manager.
Other options include:
WinPython: Another free distribution including scientific packages and the Spyder IDE; Windows only, but more actively maintained and supports the latest Python 3 versions.
Pyzo: A free distribution based on Anaconda and the IEP interactive development environment; Supports Linux, Windows, and Mac.
Installing via pipВ¶
Python comes with an inbuilt package management system, pip. Pip can install, update, or delete any official package.
You can install packages via the command line by entering:
We recommend using an user install, sending the —user flag to pip. pip installs packages for the local user and does not write to the system directories. Preferably, do not use sudo pip , as this combination can cause problems.
Pip accesses the Python Package Index, PyPI , which stores almost 200,000 projects and all previous releases of said projects. Because the repository keeps previous versions, you can pin to a version and not worry about updates causing conflicts. Pip can also install packages in local virtualenv, or virtual environment.
Install system-wide via a package managerВ¶
System package managers can install the most common Python packages. They install packages for the entire computer, often use older versions, and don’t have as many available versions.