Верные слова не изящны, изящные слова не верны (Лао-Цзы).

Как управлять пакетами Python с использованием Pip

FavoriteLoadingДобавить в избранное
1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (1 оценок, среднее: 5,00 из 5)
Загрузка...
18 декабря 2017
Как управлять пакетами Python с использованием Pip
PIP, менеджер пакетов python, используется для установки, обновления, удаления пакетов, написанных на языке программирования Python. В этом руководстве мы будем обсуждать, как установить pip и управлять пакетами python, таких как установка, обновление и удаление пакетов с помощью pip. Кроме того, мы увидим, что это такое виртуальная среда, как создать ее, и как изолировать пакеты в виртуальной среде с помощью инструментов venv и/или virtualenv. Давайте перейдем к делу.

Установка

Установить pip с помощью менеджеров пакетов

На Arch Linux и его вариантов, такие как Antergos, Manjaro Linux, вы можете установить pip с помощью команды:

Python 2:

sudo pacman -S python2-pip

Python 3:

sudo pacman -S python-pip

На Fedora 21:

Python 2:

sudo yum upgrade python-setuptools
sudo yum install python-pip python-wheel

Python 3:

sudo yum install python3 python3-wheel

Fedora 22:

Python 2:

sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel

Python 3:

sudo dnf install python3 python3-wheel

 

Для того, чтобы получить более новые версии pip, Setuptools и колеса для Python 2, включите PyPA COPR Repo с помощью команды:

dnf copr enable pypa/pypa

 

а затем запустите:

sudo dnf upgrade python-setuptools
sudo dnf install python-pip python-wheel

На CentOS/RHEL:

pip и wheel не доступны в репозиториях по умолчанию CentOS и RHEL. Чтобы установить pip на CentOS, RHEL, Scientific Linux и другие системы на основе RPM, включите репозиторий Epel с помощью команды:

sudo yum install epel-release

 

А затем запустите следующую команду, чтобы установить pip:

sudo yum install python-pip
sudo yum install python-wheel

 

Поскольку пакет setup-tools доступен в репозитории по умолчанию, вы можете установить его с помощью команды:

sudo yum upgrade python-setuptools

OpenSUSE:

Python 2:

sudo zypper install python-pip python-setuptools python-wheel

Python 3:

sudo zypper install python3-pip python3-setuptools python3-wheel

Debian/Ubuntu:

sudo apt-get install python-pip

 

Замените «python» с «python3» для Python 3.

В Ubuntu 12.04 нет версии PIP3. Если вы используете Ubuntu 12.04, вы можете установить PIP3 с помощью следующих команд:

sudo apt-get install python3-setuptools
sudo easy_install3 pip

Установка pip из бинарных файлов

Если вы хотите установить pip из бинарных файлов, просто запустите:

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

 

Обратите внимание, что get-pip.py также установит Setuptools и well. Как мы уже упоминали ранее, некоторые дистрибутивы Linux не имеют well в основных репозиториях. В таких случаях, возможно, потребуется добавить несколько репозиториев третьих сторон, например, Epel.

pip уже установлен, если вы используете Python 2> = 2.7.9 или Python 3> = 3.4 двоичные файлы, загруженные из python.org. Тем не менее, вам нужно будет обновить pip с помощью команды:

sudo pip install -U pip

 

или,

sudo pip install --upgrade pip

 

Для того, чтобы обновить все (pip, setuptools, whell), выполните следующую команду:

sudo pip install --upgrade pip setuptools wheel

 

Чтобы узнать установленную версию pip/pip3, выполните следующую команду:

pip --version

 

или,

pip -V

 

Пример вывода будет такой:

pip 9.0.1 from /usr/lib/python3.6/site-packages (python 3.6)

Создание виртуальных сред

Перед установкой любых пакетов pyton, рекомендуется создать виртуальную среду. Вы можете спросить, почему нам нужно создать виртуальную среду? Потому что, «виртуальная среда» позволяет установить пакет Python в изолированном месте, а не устанавливать его по всему миру.

Допустим, вы хотите установить пакет Python, например, YouTube, для, что нужно версия 1 LibFoo, но другое приложение требует версии 2. Как вы можете использовать оба эти приложения? Если вы устанавливаете все в /usr/lib/python2.7/site-packages или /usr/lib/python3.6/site-packages (или что – то стандартное положение вашей платформы есть), легко оказаться в ситуации, когда у вас непреднамеренно обновиться приложение, которое не должно быть модернизировано. Чтобы избежать этого, мы выделяем пакеты в виртуальной среде. Все виртуальные среды имеют свои собственные каталоги установки и не взаимодействуют или конфликтуют друг с другом.

Мы можем создать изолированные среды pyton с помощью двух инструментов.

  1. venv
  2. virtualenv

Если вы используете Python 3.3 и более позднюю, venv устанавливается по умолчанию. Для Python 2.x, вам необходимо установить virtualenv. Чтобы сделать это, выполните команду:

sudo pip install virtualenv

 

Давайте, сейчас создадим виртуальную среду.

Использование virtualenv:

virtualenv <DIR_NAME>
source <DIR_NAME>/bin/activate

 

Использование venv:

python3 -m venv <DIR_NAME>
source <DIR_NAME>/bin/activate

 

После того, как вы запустите выше команду, вы будете помещены в виртуальной среде.

Чтобы отключить виртуальную среду и перейти обратно к нормальной оболочки, выполните следующую команду:

deactivate

Управление пакетами Python с использованием pip

Теперь мы видим наиболее распространенные основы использования PIP с примерами.

Для того, чтобы просмотреть список всех команд, отдельные и общие параметры, выполните следующую команду:

pip

 

Чтобы знать, что делает команда install, выполните следующую команду:

pip install --help

 

Наиболее распространенным использованием pip является установка из PyPi (Python Package Index), PyPi представляет собой хранилище, содержащее все пакеты, созданные сообществом разработчиков в Python.

Установка пакетов

Создание виртуальной среды:

Использование virtualenv:

virtualenv MYENV

 

Заменить MYENV на ваше собственное имя.

Использование venv:

python3 -m venv MYENV

 

Наконец, включите его с помощью команды:

source MYENV/bin/activate

 

После того, как вы запустите выше команду, вы будете помещены в виртуальную среду.

Теперь настало время, установить некоторые пакеты. Чтобы установить пакет, например YouTube-DL, выполните команду:

pip install youtube-dl

Эта команда установит YouTube-DL со всеми его зависимостями.

Чтобы установить определенную версию, выполните следующую команду:

pip install youtube_dl=2017.12.14

 

Чтобы установить версию, кроме указанной версии, выполните следующую команду:

pip install youtube_dl!=2017.12.14

 

Обратите внимание на символ “!”.

Чтобы установить версию, равную или превышающую указанную версию, выполните команду:

pip install youtube_dl>=2017.12.14

 

Чтобы установить версию в определенном диапазоне, например, большую или равное одной из версий, и меньше, чем другую, выполните следующую команду:

pip install youtube_dl>=2017.12.14, <2017.12.20

 

Чтобы установить версию, «совместимую» с определенной версией:

pip install youtube_dl~=2017.12.14

Скачать пакеты

Для того, чтобы загрузить пакет со всеми зависимостями (без установки), выполните:

pip download youtube-dl

Список всех установленных пакетов

Чтобы узнать, какие пакеты были установлены pip, выполните команду:

pip freeze

 

или,

pip list

Эти команды будут отображать все установленные пакеты, используя pip в вашей системе.

Поиск пакетов

Для поиска конкретного пакета, например YouTube-DL, выполните команду:

pip search youtube-dl

 

Эта команда будет искать и отображать результат, который соответствует строке «YouTube-DL».

Обновление пакетов

Для того, чтобы обновить устаревший пакет, выполните команду:

pip install --upgrade youtube-dl

 

Чтобы получить список всех устаревших пакетов в простом табличном формате, выполните следующую команду:

pip list --outdated --format=columns

 

Пример вывода:

Package Version Latest Type 
----------------- ------------ ---------- -----
alembic 0.8.10 0.9.6 sdist
argcomplete 1.9.2 1.9.3 wheel
arrow 0.10.0 0.12.0 sdist
arxiv2bib 1.0.7 1.0.8 sdist
asn1crypto 0.22.0 0.24.0 wheel
attrs 17.2.0 17.3.0 wheel
awesome-finder 1.0.5 1.1.1 wheel
cffi 1.10.0 1.11.2 wheel
classifier 1.7 2.0 sdist
cryptography 1.9 2.1.4 wheel
decorator 4.0.11 4.1.2 wheel
fuzzywuzzy 0.15.0 0.15.1 wheel
hyperlink 17.2.1 17.3.1 wheel
idna 2.5 2.6 wheel
imageio 2.1.2 2.2.0 sdist
lxml 3.8.0 4.1.1 wheel
Mako 1.0.6 1.0.7 sdist
MarkupSafe 0.23 1.0 sdist
papis 0.4.6 0.5.0 sdist
parse 1.6.5 1.8.2 sdist
praw 4.3.0 5.3.0 wheel
prawcore 0.7.0 0.13.0 wheel
pyasn1 0.2.3 0.4.2 wheel
pyasn1-modules 0.0.9 0.2.1 wheel
pycairo 1.13.3 1.15.4 sdist
pyOpenSSL 17.1.0 17.5.0 wheel
pyperclip 1.5.27 1.6.0 sdist
python-dateutil 2.6.0 2.6.1 wheel
python-magic 0.4.13 0.4.15 wheel
python-ptrace 0.8.1 0.9.3 wheel
python-xlib 0.20 0.21 wheel
redlib 1.5.6 1.5.7 sdist
requests 2.12.5 2.18.4 wheel
requests-toolbelt 0.7.0 0.8.0 wheel
setuptools 36.6.0 38.2.4 wheel
speedtest-cli 1.0.6 1.0.7 wheel
SQLAlchemy 1.1.5 1.1.15 sdist
tabulate 0.7.7 0.8.2 sdist
torrench 1.0.56 1.0.61 wheel
tqdm 4.11.2 4.19.5 wheel
Twisted 17.5.0 17.9.0 sdist
urllib3 1.21.1 1.22 wheel
wpm 1.33 1.34 sdist
youtube-dl 2017.10.15.1 2017.12.14 wheel
zope.interface 4.3.3 4.4.3 wheel

 

Теперь мы обновляем устаревшие пакеты в большинстве последних доступных версий с помощью команды:

pip freeze --local | grep -v '^\e' | cut -d = -f 1 | xargs -n1 pip install -U

Экспорт всех установленных пакетов в файле

Иногда, вы можете экспортировать все установленные пакеты в файл, чтобы проверить их в различных условиях. Для этого выполните следующую команду:

pip freeze > MYENV_packages.txt

 

Теперь, отключить текущую виртуальную среду:

deactivate

 

и создайте новую с помощью команд:

virtualenv MYENV1

 

Замените MYENV1 на ваше собственное имя.

Использование venv:

python3 -m venv MYENV1

 

Активируйте вновь созданную среду:

source MYENV1/bin/activate

 

Теперь установите все пакеты, которые мы экспортировали ранее.

pip install -r MYENV_packages.txt

 

Для того, чтобы установить все сразу без вмешательства пользователя, выполните следующую команду:

pip install -r MYENV_packages.txt -y

 

Кроме того, вы можете удалить все пакеты из списка, используя команду:

pip uninstall -r MYENV_packages.txt -y

Просмотр информации о пакете

Для того, чтобы просмотреть подробную информацию о пакете, выполните команду:

$ pip show youtube-dl
Name: youtube-dl
Version: 2017.12.14
Summary: YouTube video downloader
Home-page: https://github.com/rg3/youtube-dl
Author: Sergey M.
Author-email: dstftw@gmail.com
License: UNKNOWN
Location: /home/sk/MYENV/lib/python3.6/site-packages
Requires:

Посмотреть зависимости пакетов

Мы можем визуализировать зависимости всех установленных пакетов с помощью инструмента «pipdeptree».

Установите его с помощью команды:

pip install pipdeptree

 

После установки, вы можете просматривать дерево зависимостей с помощью команды:

pipdeptree

 

Удаления пакетов

Чтобы деинсталировать/удалить установленный пакет, выполните команду:

pip uninstall youtube-dl

 

Чтобы удалить несколько пакетов, укажите их, разделяя:

pip uninstall package1, package2

 

Для того, чтобы удалить все пакеты pyton, установленный с помощью pip, выполните команду:

pip freeze | xargs pip uninstall -y

 

Иногда pip не позволяет удалять пакеты, принадлежащие ОС. В таких случаях, вы можете удалить все пакеты, которые не являются собственностью ОС с помощью команды:

pip uninstall -y $(pip freeze | sed 's;==.*;;g' | tr '\n' ' ')

 

Как я уже говорил в предыдущем разделе, мы можем сбросить все установленные пакеты в файл и удалить их из списка с помощью команды:

pip uninstall -r MYENV_packages.txt -y

 

На этом этапе вы можете получить некоторое представление о pip и его использовании. Для получения более подробной информации, обратитесь к официальной документации (https://pip.pypa.io/en/stable/user_guide/) и раздел помощи pip, выполнив следующую команду:

pip --help

 

или просто,

pip

Это все. Будьте на связи!

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Просмотров: 194

Если статья понравилась, то поделитесь ей в социальных сетях:

Добавить комментарий

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close