Как подключить стороннюю библиотеку python
FAQ: Установка библиотек для Python
Инструкция по установке библиотек для python
Установка библиотек в windows
Примеры в данной инструкции были сделаны в windows 10 и python 3.6.4 x64
Автоматизированная установка
Автоматизированная установка проводится при помощи утилиты pip. Она сама подбирает необходимую версию библиотеки с https://pypi.python.org/pypi и устанавливает ее.
Данный способ подходит для 90% случаев, потому что практически все библиотеки для python размещаются на pypi. Чтобы воспользоваться pip нужно выполнить 1 простую команду:
в результате выполнения данной команды будет установлена библиотека PyQt5. Другую библиотеку можно поставить просто, заменив PyQt5 на название нужной библиотеки.
Ручная установка
При ручной установке требуется знать, что библиотеки могут распространяются двумя способами: в виде заранее собранных дистрибутивов в формате whl и в виде архива с исходными текстами.
Иногда бывает сложно найти whl подходящий для Вашего интерпретатора и ОС, если такая ситуация возникла можно поискать библиотеку сайте https://www.lfd.uci.edu/
gohlke/pythonlibs/.
Там регулярно выкладываются актуальные версии популярных библиотек для различных версий python.
Правильная установка python в windows
Чтобы правильно установить python действуйте как показано на скриншотах, представленных ниже:
Русские Блоги
Как установить сторонние библиотеки в Python
Существует около трех часто используемых инструментов для установки сторонних библиотек Python:
Общий формат установочного пакета:
1. whl (рекомендуется, бинарный)
2、tar.gz
3、zip
4. Яйцо (первый распространенный формат упаковки)
напрямую изменить суффикс файлов whl и egg на zip, который можно распаковать как zip
setup.py
Setup.py часто используется для установки исходного кода. Поскольку официальный веб-сайт pypi загружает пакет очень медленно, некоторые люди предпочтут загрузить и установить его, а некоторые люди загрузят исходный код на GitHub для установки. Setup.py часто используется с последним.
установка:
1. Загрузите zip и разархивируйте;
2. Откройте cmd и введите путь после распаковки;
3. Выполните последовательно следующие коды.
Команда выглядит следующим образом:
Путь, по которому хранится установочный пакет Windows: \ Lib \ site-packages в пути установки python.
Путь для Linux должен быть: /usr/lib/python2.7/site-packages. (Путь не обязательно, в зависимости от ситуации, некоторые могут находиться в / usr / local / lib)
Недостатки:
Но этот метод установки имеет очень большую проблему, то есть пакет, установленный с помощью этого метода, не может быть полностью удален с помощью pip uninstall.
В Интернете есть способ удаления, но я пробовал его не очень эффективно:
Удалить
В общем, не рекомендуется использовать этот тип, на самом деле pip также может напрямую установить сжатый пакет, о чем мы поговорим позже.
easy_install
Если мы хотим использовать easy_install, нам сначала понадобятся инструменты настройки. Конечно, текущая версия идет вместе с ним. Python 3.6 и более поздние версии немного отличаются, что будет обсуждаться позже.
Но все же могу упомянуть:
1. Откройте официальный сайтhttp://pypi.python.org/pypi/setuptools На данный момент в последней версии есть только два формата whl и zip (раньше был exe, а сейчас вроде нет, но теперь мне кажется, что так удобнее).
Но предпосылка whl заключается в использовании pip для установки, а иногда и pip, нам может потребоваться использовать easy_install для установки, мы не часто используем easy_install с pip, поэтому мы можем загружать только zip.
2. После загрузки разархивируйте, вы найдете внутри easy_install.py и setup.py, которые можно использовать напрямую.
Если это exe-файл, дважды щелкните файл ez_setup.py, чтобы установить его после установки, или выполните команду в cmd:
После установки easy_install его можно использовать для установки пакета, но рекомендуется добавить путь easy_install в переменную среды PATH, в противном случае вам нужно будет вводить путь каждый раз при установке пакета.
Как использовать easy_install, например, установить pip, просто добавьте имя пакета напрямую:
Удалить
Обновить
использовать
Установить tar.gz и zip с помощью pip проще всего, распаковывать не нужно, первые два тоже нужно распаковать.
Пакетная установка
Иногда вы обнаружите, что если вы хотите установить файл wheel при отсутствии сети, в прямом пипе будет ошибка. Есть способ, и он может быть пакетным, который заключается в использовании файла requirements.txt. Однако перед этим нам все еще нужно знать, что причина, по которой мы не можем установить файл wheel, заключается в том, что собственный питон не поддерживает загруженный файл whl.
1. Мы загрузим все пакеты, включая whl, tar.gz и т. Д.
2. Затем запишите версию пакета в файл requirements.txt и сложите их.
3. Вы можете выполнить команду напрямую или записать команду в сценарий.
Команда выглядит следующим образом:
Массовое удаление
wheel
1. Формат наименования пакета колес
Первые два представляют имя и версию пакета соответственно.Трёхэлементные кортежи, выводимые из ранее просмотренной версии колеса, представляют
py-no расширение для конкретной реализации
cp-CPython, который является широко используемой реализацией Python.
ip-IronPython, реализация Python, работающая на платформе Windows CLI.
pp-PyPy, реализация Python с JIT
jy-Jython, реализация Python, работающая на JVM
Например, py2 и py3 в белом имени запроса представляют поддержку py2.x и py3.x соответственно. Если две существуют одновременно, это означает, что поддерживаются обе версии, разделенные знаком «.».
Честно говоря, я не совсем понимаю, что это такое, знаю только, что он делится на следующие категории:
Если нет возможности определить тип abi при упаковке, сгенерированный тег abi будет отсутствовать. Если пакет Python представляет собой чистую реализацию Python, которая не полагается на конкретный abi, сгенерированный тег abi также не имеет значения.
Большая часть того, что мы загружаем, похоже на окончание mu, например cp27mu.
win32-Windows32 бит
win_amd64 —— 64-разрядная версия Windows.
linux_i386-Linux 32 бит
linux_x86_64 —— Linux64 бит
любой —— любой
2. Какие типы файлов wheel поддерживает среда Python?
Просмотреть версии ниже pip10:
Просмотреть версии выше pip10:
Вы можете увидеть картинку:
Как видите, это список кортежей из нескольких групп. Вам знакомы три элемента в нем? Давайте посмотрим на имя файла колеса, например запросы:
Конечно, последнее невозможно увидеть при выполнении на Python в Windows.
Скачать исходный код
Источник загрузки внутреннего официального сайта pypi иногда медленный, мы можем указать источник
Домашние зеркала на данный момент имеют:
Адрес загрузки сторонней библиотеки
Различия в методах установки pip до и после python3.6
Существует большая разница между Python 3.6 и предыдущими версиями (включая 2.x и 3.x до 3.6). После установки каталог Scripts пуст, и возникает ошибка, когда мы хотим выполнить пакет обновления:
conda
Когда я познакомился с python через 16 лет, изучение поисковых роботов было почти прекращено из-за установки сторонних библиотек, особенно фреймворка Scrapy.Позже я обнаружил такую хорошую вещь с Anaconda через некоторое время.
Если вы хотите установить Anaconda для py2 и py3 вместе, просто установите один из них в другой уже установленный путь envs.
virtualenv
Что касается установочного пакета, если вы чувствуете, что его все равно нельзя установить, использование виртуальной среды также является хорошим выбором.
Подключение модулей в Python
Язык программирования Python имеет много встроенных функций. Однако их не хватает для решения всех видов задач, поэтому программисты добавляют инструменты, подключая модули.
Что такое модуль
Это отдельный файл, содержащий какой-то код. Любой скрипт, написанный программистом на Python 3, можно назвать модулем. Он может быть как исполняемым, так и подключаемым. Исполняемый модуль содержит код, который самостоятельно выполняет какие-то действия, а подключаемый представляет из себя набор функций, классов и объектов, которые можно использовать для решения задач в другой программе.
Разделение программ на модули даёт ряд преимуществ:
Исполняемый и подключаемый модуль
Можно написать такой скрипт, который будет и выполнять какие-то действия (программа), и импортироваться в другие модули (библиотека).
Его важно правильно оформить:
Подключение модуля
Это можно сделать разными способами, выбор зависит только от нужд и желаний программиста.
Модули в Python — это файлы с расширением «.py». При импорте расширение опускается, интерпретатор и так знает, что после команды import следует имя модуля.
Программист может без проблем подключить любой модуль, который есть в стандартной библиотеке Python 3. Для подключения специфичных пользовательских инструментов сначала нужно их скачать. Обычно для этого используется пакетный менеджер pip.
Обычное подключение — import
После подключения программа получает доступ ко всем функциям, методам и классам, содержащимся в нём.
Программист может вызвать любую функцию из подключенной библиотеки используя префикс « имя_модуля. «. Пример: random.randint(1,15) где random — это библиотека, которую мы подключили, а randint — имя функции, которая в ней описана.
Этот способ не допускает пересечения имён, то есть программист может использовать одно и то же имя функции в скрипте, точно такое же, как и в подключаемой библиотеке и не бояться, что после её подключения, функция будет переопределена.
Вот полный пример использования инструкции import в Python 3:
Использование псевдонимов — as
Некоторые модули имеют длинное и неудобное название. Для удобства и сокращения количества кода программист может заменить его на своё.
Импорт компонентов — from
Чтобы не захламлять программу большим количеством неиспользуемых инструментов, можно подключать не весь модуль, а какую-то его часть.
Таким образом, основной скрипт получает доступ только к определённой функции. Кроме того, при таком подключении при вызове функций из подключённого модуля не используется префикс. Важно не забывать об этом, чтобы не допустить конфликта имён.
Можно подключить несколько функций сразу в одной строке. Для этого их надо перечислить через запятую.
Если после import написать символ звёздочки «*», подключится все содержимое модуля. Это считается плохим тоном, потому что может привести к совпадению имён из основного скрипта с именами из подключаемого. Но если программист уверен, что использовал уникальные названия для функций и переменных, теоретически он может использовать этот способ.
Перезагрузка библиотеки
За один сеанс модуль можно импортировать только один раз. Если программист после импорта, изменит в файле, который импортировал что-либо, а потом снова его импортирует, основная программа не будет видеть этих изменений.
Всё потому, что при импорте библиотека кешируется, когда её пытаются импортировать снова, интерпретатор Python просто использует сохранённую в кэше копию.
Если всё же необходимо перезагрузить модуль, на помощью приходит функция reload() из стандартной библиотеки importlib. Перезагрузка не влияет на объекты, ссылающиеся на импортированный модуль, и позволяет реализовать динамическую перезагрузку компонентов программы.
Подключение из другой папки
Библиотеки подключаются очень просто, когда интерпретатор Python знает, где их искать. Python ищет модули:
Чтобы импортировать модуль из другой папки в Python 3, можно сделать следующее:
Для того чтобы директория, содержащая файлы, определялась как пакет, в неё необходимо добавить файл __init__.py. Он показывает интерпретатору Python, что папка — это пакет с модулями.
Начиная с версии Python 3.3, добавлять файл __init__.py в директорию больше не нужно, интерпретатор Python считает все папки пакетами.
Как устанавливать пакеты в Python — с PIP и без
Прежде чем что-то устанавливать, давайте разберёмся, что такое пакет, чем он отличается от модуля, и как с ним работать. У слова «пакет» применительно к Python два значения.
Установка PIP для Python 3 и 2
Если вы используете виртуальные окружения на базе venv или virtualenv, pip уже установлен. Начиная с Python 3.4 (для Python 2 — с версии 2.7.9) pip поставляется вместе с интерпретатором. Для более ранних версий устанавливать менеджер пакетов нужно вручную. Вариантов два:
C помощью скрипта get_pip.py — быстро.
Через setuptools — кроме pip сможем использовать easy_install.
Вариант 1. Скачиваем скрипт get_pip.py и запускаем в консоли. Для этого открываем терминал через Win+R>»cmd»>OK и пишем:
Полный путь полезен и в том случае, если у вас на компьютере несколько версий Python и вы ставите пакет для одной из них.
Вариант 2. Скачиваем архив с setuptools из PYPI и распаковываем в отдельный каталог. В терминале переходим в директорию setuptools c файлом setup.py и пишем:
python setup.py install
Установка пакета в pip
Пора запустить pip в Python и начать устанавливать пакеты короткой командой из консоли:
pip install имя_пакета
Обновить пакет не сложнее:
Если у вас последняя версия пакета, но вы хотите принудительно переустановить его:
Посмотреть список установленных пакетов Python можно с помощью команды:
Найти конкретный пакет по имени можно командой «pip search». О других командах можно прочесть в справке, которая выдается по команде «pip help».
Удаление пакета Python
Когда пакет больше не нужен, пишем:
pip uninstall имя_пакета
Как установить пакеты в Python без pip
он не удаляет пакеты,
он может пытаться установить недозагруженный пакет.
Если нужно скачать пакет из альтернативного источника, вы можете задать URL или локальный адрес на компьютере:
Список пакетов, установленных через easy_install, хранится в файле easy-install.pth в директории /libs/site-packages/ вашего Python.
К счастью, удалять установленные через easy_install пакеты можно с помощью pip. Если же его нет, потребуется удалить пакет вручную и стереть сведения о нем из easy-install.pth.
Теперь вы умеете ставить и удалять пакеты для вашей версии Python.
Кстати, для тех, кто изучает Python, мы подготовили список полезных и практичных советов.
Прежде чем что-то устанавливать, давайте разберёмся, что такое пакет, чем он отличается от модуля, и как с ним работать. У слова «пакет» применительно к Python два значения.
Установка PIP для Python 3 и 2
Если вы используете виртуальные окружения на базе venv или virtualenv, pip уже установлен. Начиная с Python 3.4 (для Python 2 — с версии 2.7.9) pip поставляется вместе с интерпретатором. Для более ранних версий устанавливать менеджер пакетов нужно вручную. Вариантов два:
C помощью скрипта get_pip.py — быстро.
Через setuptools — кроме pip сможем использовать easy_install.
Вариант 1. Скачиваем скрипт get_pip.py и запускаем в консоли. Для этого открываем терминал через Win+R>»cmd»>OK и пишем:
Полный путь полезен и в том случае, если у вас на компьютере несколько версий Python и вы ставите пакет для одной из них.
Вариант 2. Скачиваем архив с setuptools из PYPI и распаковываем в отдельный каталог. В терминале переходим в директорию setuptools c файлом setup.py и пишем:
python setup.py install
Установка пакета в pip
Пора запустить pip в Python и начать устанавливать пакеты короткой командой из консоли:
pip install имя_пакета
Обновить пакет не сложнее:
Если у вас последняя версия пакета, но вы хотите принудительно переустановить его:
Посмотреть список установленных пакетов Python можно с помощью команды:
Найти конкретный пакет по имени можно командой «pip search». О других командах можно прочесть в справке, которая выдается по команде «pip help».
Удаление пакета Python
Когда пакет больше не нужен, пишем:
pip uninstall имя_пакета
Как установить пакеты в Python без pip
он не удаляет пакеты,
он может пытаться установить недозагруженный пакет.
Если нужно скачать пакет из альтернативного источника, вы можете задать URL или локальный адрес на компьютере:
Список пакетов, установленных через easy_install, хранится в файле easy-install.pth в директории /libs/site-packages/ вашего Python.
К счастью, удалять установленные через easy_install пакеты можно с помощью pip. Если же его нет, потребуется удалить пакет вручную и стереть сведения о нем из easy-install.pth.
Теперь вы умеете ставить и удалять пакеты для вашей версии Python.
Кстати, для тех, кто изучает Python, мы подготовили список полезных и практичных советов.
Создание виртуальных окружений и установка библиотек для Python 3 в IDE PyCharm
Язык программирования Python считается достаточно простым. На нем легче и быстрее пишутся программы, по сравнению с компилируемыми языками программирования. Для Python существует множество библиотек, позволяющих решать практически любые задачи. Есть, конечно, и минусы и другие нюансы, но это отдельная тема.
Довольно часто я вижу, как мои знакомые и друзья начинают изучать Python и сталкиваются с проблемой установки и использования сторонних библиотек. Они могут несколько часов потратить на установку библиотеки, и даже, могут не справиться с этим и забить на неё. В то время как, в большинстве случаев, это можно было сделать за несколько минут.
Статья начинается с базовых вещей: с установки Python 3, инструментов разработки Pip и Virtualenv и среды разработки PyCharm в Windows и в Ubuntu. Для многих это не представляет трудностей и возможно, что уже всё установлено.
После чего будет то, ради чего задумывалась статья, я покажу как в PyCharm создавать и использовать виртуальные окружения и устанавливать в них библиотеки с помощью Pip.
Установка Python и Pip
Pip является менеджером пакетов для Python. Именно с помощью него обычно устанавливаются модули/библиотеки для разработки в виде пакетов. В Windows Pip можно установить через стандартный установщик Python. В Ubuntu Pip ставится отдельно.
Установка Python и Pip в Windows
Для windows заходим на официальную страницу загрузки, где затем переходим на страницу загрузки определенной версии Python. У меня используется Python 3.6.8, из-за того, что LLVM 9 требует установленного Python 3.6.
Во время установки ставим галочку возле Add Python 3.x to PATH и нажимаем Install Now:
Установка Python и Pip в Ubuntu
В Ubuntu установить Python 3 можно через терминал. Запускаем его и вводим команду установки. Вторая команда выводит версию Python.
Далее устанавливаем Pip и обновляем его. После обновления необходимо перезапустить текущую сессию (или перезагрузить компьютер), иначе возникнет ошибка во время вызова Pip.
Основные команды Pip
Рассмотрим основные команды при работе с Pip в командой строке Windows и в терминале Ubuntu.
Установка VirtualEnv и VirtualEnvWrapper
VirtualEnv используется для создания виртуальных окружений для Python программ. Это необходимо для избежания конфликтов, позволяя установить одну версию библиотеки для одной программы, и другу для второй. Всё удобство использования VirtualEnv постигается на практике.
Установка VirtualEnv и VirtualEnvWrapper в Windows
В командной строке выполняем команды:
Установка VirtualEnv и VirtualEnvWrapper в Ubuntu
Для Ubuntu команда установки будет следующей:
После которой в конец
Работа с виртуальным окружением VirtualEnv
Рассмотрим основные команды при работе с VirtualEnv в командой строке Windows и в терминале Ubuntu.
Команда | Описание |
---|---|
mkvirtualenv env-name | Создаем новое окружение |
workon | Смотрим список окружений |
workon env-name | Меняем окружение |
deactivate | Выходим из окружения |
rmvirtualenv env-name | Удаляем окружение |
Установка PyCharm
PyCharm — интегрированная среда разработки для языка программирования Python. Обладает всеми базовыми вещами необходимых для разработки. В нашем случае огромное значение имеет хорошее взаимодействие PyCharm с VirtualEnv и Pip, чем мы и будем пользоваться.
Установка PyCharm в Windows
Скачиваем установщик PyCharm Community для Windows с официального сайта JetBrains. Если умеете проверять контрольные суммы у скаченных файлов, то не забываем это сделать.
В самой установке ничего особенного нету. По сути только нажимаем на кнопки next, и в завершение на кнопку Install. Единственно, можно убрать версию из имени папки установки, т.к. PyCharm постоянно обновляется и указанная версия в будущем станет не правильной.
Установка PyCharm в Ubuntu
Скачиваем установщик PyCharm Community для Linux с официального сайта JetBrains. Очень хорошей практикой является проверка контрольных сумм, так что если умеете, не ленитесь с проверкой.
Теперь в директории
Далее выполняем команды в терминале:
Производим установку. И очень важно в конце не забыть создать desktop файл для запуска PyCharm. Для этого в Окне приветствия в нижнем правом углу нажимаем на Configure → Create Desktop Entry.
Установка PyCharm в Ubuntu из snap-пакета
PyCharm теперь можно устанавливать из snap-пакета. Если вы используете Ubuntu 16.04 или более позднюю версию, можете установить PyCharm из командной строки.
Использование VirtualEnv и Pip в PyCharm
Поддержка Pip и Virtualenv в PyCharm появилась уже довольно давно. Иногда конечно возникают проблемы, но взаимодействие работает в основном стабильно.
Рассмотрим два варианта работы с виртуальными окружениями:
Первый пример: использование собственного виртуального окружения для проекта
Создадим программу, генерирующую изображение с тремя графиками нормального распределения Гаусса Для этого будут использоваться библиотеки matplotlib и numpy, которые будут установлены в специальное созданное виртуальное окружение для программы.
Запускаем PyCharm и окне приветствия выбираем Create New Project.
В мастере создания проекта, указываем в поле Location путь расположения создаваемого проекта. Имя конечной директории также является именем проекта. В примере директория называется ‘first_program’.
Теперь установим библиотеки, которые будем использовать в программе. С помощью главного меню переходим в настройки File → Settings. Где переходим в Project: project_name → Project Interpreter.
Здесь мы видим таблицу со списком установленных пакетов. В начале установлено только два пакета: pip и setuptools.
Справа от таблицы имеется панель управления с четырьмя кнопками:
Для добавления (установки) библиотеки в окружение нажимаем на плюс. В поле поиска вводим название библиотеки. В данном примере будем устанавливать matplotlib. Дополнительно, через Specify version можно указать версию устанавливаемого пакета и через Options указать параметры. Сейчас для matplotlib нет необходимости в дополнительных параметрах. Для установки нажимаем Install Package.
После установки закрываем окно добавления пакетов в проект и видим, что в окружение проекта добавился пакет matplotlib с его зависимостями. В том, числе был установлен пакет с библиотекой numpy. Выходим из настроек.
Теперь мы можем создать файл с кодом в проекте, например, first.py. Код программы имеет следующий вид:
Далее указываем в поле Name имя конфигурации и в поле Script path расположение Python файла с кодом программы. Остальные параметры не трогаем. В завершение нажимаем на Apply, затем на OK.
Теперь можно выполнить программу и в директории с программой появится файл gauss.png :
Второй пример: использование предварительно созданного виртуального окружения
Данный пример можно использовать во время изучения работы с библиотекой. Например, изучаем PySide2 и нам придется создать множество проектов. Создание для каждого проекта отдельного окружения довольно накладно. Это нужно каждый раз скачивать пакеты, также свободное место на локальных дисках ограничено.
Более практично заранее подготовить окружение с установленными нужными библиотеками. И во время создания проектов использовать это окружение.
В этом примере мы создадим виртуальное окружения PySide2, куда установим данную библиотеку. Затем создадим программу, использующую библиотеку PySide2 из предварительно созданного виртуального окружения. Программа будет показывать метку, отображающую версию установленной библиотеки PySide2.
Далее в созданном окружении устанавливаем пакет с библиотекой PySide2, также как мы устанавливали matplotlib. И выходим из настроек.
Теперь мы можем создавать новый проект использующий библиотеку PySide2. В окне приветствия выбираем Create New Project.
Для проверки работы библиотеки создаем файл second.py со следующий кодом:
Далее создаем конфигурацию запуска программы, также как создавали для первого примера. После чего можно выполнить программу.
Заключение
У меня нет богатого опыта программирования на Python. И я не знаком с другими IDE для Python. Поэтому, возможно, данные IDE также умеют работать с Pip и Virtualenv. Использовать Pip и Virtualenv можно в командой строке или в терминале. Установка библиотеки через Pip может завершиться ошибкой. Есть способы установки библиотек без Pip. Также создавать виртуальные окружения можно не только с помощью Virtualenv.
В общем, я лишь поделился небольшой частью опыта из данной области. Но, если не вдаваться в глубокие дебри, то этого вполне достаточно знать, чтобы писать простые программы на Python с использованием сторонних библиотек.