- DATAENGINER
- Шаг 1. Убедитесь, что PIP еще не установлен
- Шаг 2. Проверьте установку Python
- Установка PIP в Windows
- Шаг 3. Загрузите PIP get-pip.py
- Шаг 4. Запустите командную строку Windows
- Шаг 5. Установка PIP в Windows
- Шаг 6: Как проверить версию PIP
- Шаг 7: проверьте установку
- Шаг 8: настройка
- Обновление PIP для Python в Windows
- Понизить версию PIP
- Вывод
- Pip для Python — что это?
- Установка pip для Python 2 и 3
- Как выглядит установка pip на практике? Вариант 1
- Вариант 2
- Установка пакета в pip
- Как удалять пакеты в Python?
- Устанавливаем пакеты в Python, не используя pip
- Pip eel для Python — что это?
- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- Как установить Python и PIP на Windows 10. Настройка Python в качестве модуля веб-сервера
- Как установить Python в Windows
- Как запускать программы Python в Windows
- Как начать изучать Python
- Как установить PIP в Windows
- Установка Средства сборки C++
- Как пользоваться PIP в Windows
- Подключение модуля Python к веб-серверу Apache в Windows
- Настройка Apache на запуск Python CGI
- Создайте тестовую страницу Python
- Редакторы исходного кода Python
- Решение ошибки error Microsoft Visual C++ 14.0 is required
- Ошибки при компиляции в Python
- А что происходит, когда я нахожусь в активированной среде?
- ВСЕГДА пользуйтесь средой! Не ставьте все подряд в глобальный интерпретатор!
- Если вам нужно установить инструмент
- Если вам нужна среда для проекта (и вы не пользуетесь conda)
- Если вы используете conda
- Всегда есть контейнеры
- Что такое PIP? Руководство начинающего Python-иста
- Содержание
- Быстрый старт с pip
- Установка пакетов с pip
- Базовая установка пакета
- Использование файлов требований
- Требования к тонкой настройке
- Зависимости разработки vs. production
- Фиксация требования для Production
- Поиск пакетов для использования
- Удаление пакетов
- Альтернатива pip
- Conda делает всё
- Pipenv
- Poetry
DATAENGINER
PIP — это система управления пакетами, используемая для установки и управления программными пакетами, написанными на Python. Это означает «предпочтительная программа установки» или «Pip Installs Packages».
PIP для Python — это утилита для управления установками пакетов PyPI из командной строки.
Если вы используете старую версию Python в Windows, вам может потребоваться установить PIP. Вы можете легко установить PIP в Windows, загрузив установочный пакет, открыв командную строку и запустив установщик.
Из этого туториала Вы узнаете, как установить PIP в Windows, проверить его версию, обновить и настроить.
Шаг 1. Убедитесь, что PIP еще не установлен
Перед установкой PIP в Windows убедитесь, что PIP уже установлен.
Введите в командной строке следующую команду:
Если PIP отвечает, значит, PIP установлен. В противном случае будет ошибка о том, что программа не найдена.
PIP автоматически устанавливается с Python 2.7.9+ и Python 3.4+.
Шаг 2. Проверьте установку Python
Чтобы определить, установлен ли у вас Python:
Если эта команда известна, вам необходимо установить Python, прежде чем вы сможете установить PIP.
Если команда распознается, Python сообщает ее версию и список команд.
Когда Python установлен правильно, вы должны увидеть:
Установка PIP в Windows
Шаг 3. Загрузите PIP get-pip.py
Загрузите файл в нужную папку в Windows. Вы можете сохранить файл в любом месте, но запомните путь, чтобы использовать его позже.
Шаг 4. Запустите командную строку Windows
PIP — это программа командной строки. Когда вы устанавливаете PIP, в вашу систему добавляется команда PIP.
Чтобы запустить окно командной строки:
Либо введите cmd в строку поиска Windows и щелкните значок «Командная строка».
Оба варианта открывают окно командной строки. Однако обратите внимание, что вам может потребоваться запустить командную строку «От имени администратора». Если в любой момент вы получите сообщение об отсутствии необходимых разрешений для выполнения задачи, вам нужно будет открыть приложение от имени администратора.
Чтобы запустить окно командной строки «От имени администратора», щелкните правой кнопкой мыши «Командная строка» и выберите «Запуск от имени…».
Шаг 5. Установка PIP в Windows
Чтобы установить тип PIP, выполните следующие действия:
Должна начаться установка PIP. Если файл не найден, еще раз проверьте путь к папке, в которой вы сохранили файл.
Вы можете просмотреть содержимое вашего текущего каталога, используя следующую команду:
Команда dir возвращает полный список содержимого каталога.
Шаг 6: Как проверить версию PIP
Чтобы проверить текущую версию PIP, введите следующую команду:
Эта команда возвращает текущую версию платформы.
Шаг 7: проверьте установку
После установки PIP вы можете проверить, прошла ли установка успешно, набрав следующее:
Если PIP был установлен, программа запустится, и вы должны увидеть:
Если вы получили сообщение об ошибке, повторите процесс установки.
Шаг 8: настройка
В Windows файл конфигурации PIP %HOME%\pip\pip.ini.
Обновление PIP для Python в Windows
Время от времени выпускаются новые версии PIP. Эти версии могут улучшать функциональность или быть обязательными в целях безопасности.
Вы можете обновить PIP в Windows с помощью окна командной строки.
Чтобы обновить PIP в Windows, введите в командной строке следующее:
Эта команда сначала удаляет старую версию PIP, а затем устанавливает самую последнюю версию PIP.
Понизить версию PIP
Это может быть необходимо, если новая версия PIP начинает работать неэффективно.
Если вы хотите перейти на более раннюю версию PIP, вы можете сделать это, указав версию.
Чтобы перейти на более раннюю версию PIP, введите:
Теперь вы должны увидеть указанную вами версию PIP.
Вывод
Теперь, когда у вас есть PIP, вы готовы управлять своими пакетами Python
Pip для Python — что это?
В этой статье пойдет разговор о pip для Python — что это, зачем применяется, как устанавливается, какие нюансы работы надо знать. Материал предназначен для начинающих разработчиков.
Pip (пип) — система управления пакетами, установка которой необходима для управления программными пакетами на Python. Но прежде, чем устанавливать pip на Python, давайте поговорим о пакете — что это, чем он отличается от модуля, как с ним работать.
Установка pip для Python 2 и 3
Установка pip затруднений не вызывает. Мало того, если вы применяете виртуальные окружения на базе virtualenv и venv, то система «пип» уже установлена.
Как выглядит установка pip на практике? Вариант 1
Нельзя не добавить, что полный путь полезен и тогда, когда на компьютере есть несколько версий Python, а вы ставите пакет лишь для одной.
Вариант 2
Здесь тоже установка не вызывает сложностей. Вам надо скачать архив с setuptools из PYPI и распаковать его в отдельный каталог. После этого в терминале перейдите в директорию с файлом setup.py и напишите:
Если хотите обновить pip в Windows, тогда:
Установка пакета в pip
Что же, пришло время запустить «пип» и начать устанавливать Python-пакеты путём короткой команды из консоли:
Следующая команда вам пригодится, если у вас последняя версия пакета, но есть желание принудительно переустановить его:
Хотите посмотреть список пакетов, установленных на Python? Используйте следующую команду:
Если желаете найти конкретный пакет, зная его имя, подойдёт «pip search». Да и вообще, вы можете узнать все команды в справке, написав «pip help».
Как удалять пакеты в Python?
Иногда пакет в Python больше не нужен, поэтому его можно легко удалить:
Устанавливаем пакеты в Python, не используя pip
Вот, к примеру, как выглядит команда обновления для операционной системы Windows:
Откатиться до нужной вам версии можно следующим образом:
Хотите скачать пакет для Python из альтернативного источника? Задайте URL либо локальный адрес на ПК:
При необходимости вы можете найти определенный пакет. Искать можно следующим образом:
pip search «your_query»
Команда выше выполняет поиск и без проблем находит конкретный пакет, интересующий пользователя.
Pip eel для Python — что это?
Eel — специальная библиотека, позволяющие создавать современные программные приложения на «Питоне» с красивым интерфейсом. Но прежде, чем начать работать с этой библиотекой, ее надо установить. Однако инсталляция eel происходит точно так же, как и в случае с любым другим модулем «Питона»:
Более подробно на эту тему читайте здесь.
Что же, теперь вы знаете о pip для Python — что это, как используется, как установить pip. Также умеете устанавливать и удалять пакеты для «Питона».
Если же хотите освоить этот язык программирования на более высоком уровне, воспользуйтесь курсами OTUS!
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Как установить Python и PIP на Windows 10. Настройка Python в качестве модуля веб-сервера
Язык Python является в настоящее время очень популярным и многие инструменты для сбора информации, сканирования, тестирования на проникновение, оценки безопасности написаны на Python. Все эти инструменты без проблем работают в Linux. Но на самом деле, подавляющее большинство инструментов может работать и в Windows — достаточно просто выполнить несложную установку Python.
Python — это скриптовый (интерпретируемый) язык, то есть программы перед запуском не нужно предварительно компилировать. В этом смысле Python похож на PHP.
В настоящее время существует две главных версии Python:
Они существенно различаются между собой, в том числе и синтаксисом, то есть программа, написанная на одной версии, может не работать в интерпретаторе другой версии. Тем не менее сейчас уже обозначен срок завершения поддержки Python 2.x и эту версию можно считать устаревшей. Поэтому я предлагаю установить только Python 3. Хотя если вы не согласны, то пишите в комментариях и я дополню инструкцию установкой второй версии. Хоть мы не получим старую версию, зато я дополнительно покажу, как установить PIP — систему управления пакетами Python, — а также как подключить Python в качестве модуля веб-сервера — то есть он сможет выполнять такие же функции, что и PHP.
Как установить Python в Windows
Для Python 3.x также много активно поддерживаемых веток:
Последней стабильной версией на момент написания является Python 3.8.x.
Помните, что Python не будет работать на Windows XP или более ранних.
Кстати, ведь Python есть и в магазине приложений Windows,

где у него одна звезда (из пяти) и один отзыв (что ничего не работает):

Поэтому мы выполним установку с помощью официального установщика — это совсем просто.
Для скачивания установочного файла, перейдите на страницу загрузки установочных файлов для Windows: https://www.python.org/downloads/windows/

Выберите последний выпуск Python 3, на скриншоте это Python 3.8.0.
Пролистните страницу вниз и найдите «Windows x86-64 executable installer»:

Запустите скаченный файл:

Во-первых, поставьте галочку «Add Python 3.8 to PATH». Это нужно для того, что когда вы будете запускать скрипт на Python, вам не нужно будет указывать полный путь до интерпретатора.
Во-вторых, я рекомендую изменить папку, куда будет выполнена установка. Для этого кликните «Customize installation».
В этом окне ничего не меняем, главное убедитесь, что стоит галочка напротив pip:

В этом окне убедитесь, что стоит галочка «Add Python to environment variables» и поменяйте папку установки на «C:\Python\Python38»:

Нажмите кнопку «Install»:
И… всё готово! Согласитесь, это было реально просто.
У меня в Windows уже включена поддержка путей файлов длиной более 260 символов, но если у вас ещё это не сделано, то установщик в конце предложит это — чтобы это сделать, нажмите «Disable path length limit». Эта настройки ни на что плохо не влияет. Но нужно помнить, что старые программы по-прежнему могут быть неспособны работать с файлами, пути которых имеют более 260 символов.

Смотрите подробности в статьях:
Для проверки, откройте командную строку: нажмите Win+x и выберите «Windows PowerShell»:

Откроется PowerShell. Если вам привычнее обычная командная строка Windows (CMD), то нажмите Win+r и введите

В любом из открывшихся окон введите:

Должна появится версия Python, например:
Как запускать программы Python в Windows
Поскольку многие скрипты Python представляют собой утилиты с интерфейсом командной строки, то запускать их нужно в командной строке, иначе при двойном клике программа будет быстро завершать работу и вы ничего не увидите кроме мелькнувшего окна.
Для запуска откройте командную строку и запустите команду вида:
Пример простой программы hello_world.py:

Как начать изучать Python
Как установить PIP в Windows
PIP — это менеджер пакетов, с помощью которого можно искать, устанавливать, обновлять и удалять пакеты Python. В качестве пакетов могут быть как библиотеки, которые являются зависимостями для других программ, так и полноценные программы. Причём PIP правильно обрабатывает зависимости — если для работы программы требуется другие пакеты Python, то PIP их также установит.
В Linux некоторые пакеты Python упакованы в качестве пакетов дистрибутива и распространяются через стандартные репозитории — но таких пакетов меньше, чем доступно в pip. Поэтому в Linux программа pip также используется. Что касается Windows, то здесь pip является самым удобным способом установить нужный пакет.
При установке среды Python описанным выше способом, менеджер пакетов pip также должен установиться. Вы можете проверить это:

Обновите важные компоненты:
Установка Средства сборки C++
Это опциональный шаг при установке pip — но если вы его пропустите, при попытке установить некоторые пакеты вы будете сталкиваться с ошибками.
На самом деле, при установке пакетов с помощью pip иногда выполняется в том числе и компиляция, чтобы это происходило без проблем, необходимо ещё и установить «Средства сборки C++». Для их установки скачайте и запустите файл vs_buildtools.exe. Во вкладке «Рабочие нагрузки» поставьте галочку «Средства сборки C++» и нажмите кнопку «Установить»:

Как пользоваться PIP в Windows
Для установки выполните команду вида:
В качестве примера попробуем установить программу hashID — это инструмент, написанный на Python 3, который поддерживает идентификацию более 220 уникальных типов хешей используя регулярные выражения.

Пример запуска hashID в Windows после установки:

Подключение модуля Python к веб-серверу Apache в Windows
Python может работать как модуль Apache, в этом случае скрипты Python будут выполнятся как, например, выполняются PHP скрипты. Причём оба интерпретатора могут работать одновременно.
Подразумевается, что Python у вас установлен по вышеприведённой инструкции, а веб-сервер установлен по инструкции «Установка веб-сервера (Apache 2.4, MySQL 8.0, PHP 7, phpMyAdmin) на Windows 10».
Настройка Apache на запуск Python CGI
Откройте для редактирования конфигурационный файл Apache httpd.conf, у меня он расположен по пути C:\Server\bin\Apache24\conf\httpd.conf.
Найдите там строку
и добавьте к ней ExecCGI. Должна получиться такая строка (ВНИМАНИЕ: набор опций у вас может быть другим):
Теперь найдите строку:
Раскомментируйте её, то есть удалите символ # в начале строки и добавьте к концу строки .py. Новая строка будет выглядеть примерно так:
Создайте тестовую страницу Python
В папке для ваших сайтов (у меня это C:\Server\data\htdocs\) создайте файл test.py и скопируйте в него:

Обратите внимание на самую верхнюю строку, то есть на C:\Python\Python38\python.exe — вам нужно заменить её на своё значение, указав путь до файла python.exe. Если у вас версия 3.9, то этой папкой может быть C:\Python\Python39\python.exe, то есть название папки может различаться в зависимости от установленной версии и путь до папки также может различаться в зависимости от того, какой вы выбрали при установке.
Должна будет появиться надпись
Как показано на скриншоте ниже:

Редакторы исходного кода Python
Если вы устанавливаете Python не только для запуска программ, но и для изучения языка программирования Python, то вам понадобятся редакторы исходного кода. Я могу порекомендовать парочку абсолютно бесплатных:
Решение ошибки error Microsoft Visual C++ 14.0 is required
При использовании менеджера пакетов pip на Windows вы можете столкнуться с ошибкой:

Начиная с 2017 самая новая версия Visual Studio может заменить любую требуемую версию Build Tools (инструментов сборки) C++. Для установки последней версии, скачайте и запустите файл vs_buildtools.exe. Во вкладке «Рабочие нагрузки» поставьте галочку «Средства сборки C++» и нажмите кнопку «Установить»:

Дополнительно выполните обновление setuptools:
Ошибки при компиляции в Python
Иногда при установке пакетов с помощью pip вы будете сталкиваться с ошибками вроде такой:
В ней сказано, что компиляция завершилась ошибкой из-за того, что не найден файл cairo.h.
В этой ошибке сказано, что компиляция завершилась ошибкой из-за того, что не найден файл netinet/ip.h.
Точно такие же ошибки из-за отсутствия файлов с расширением .h могут возникать и в Linux. Файлы с расширением .h являются так называемыми заголовками — то есть файлами исходного кода для импорта в другие приложения. В каждом случае придётся индивидуально выяснять, к какому пакету относится отсутствующий файл и устанавливать этот пакет.
Вы можете сказать: «Ладно, но почему я не могу просто воспользоваться pip, запустив команду pip?» Ответом будет: «Да, но контролировать вы ее будете меньше». Я объясню, что значит «контролировать меньше» на примере.
Предположим, у меня установлены две версии Python, например, Python 3.7 и 3.8 (это очень распространено среди людей, которые работают на Mac OS или Linux, не говоря уже о том, что вы возможно захотели поиграться с Python 3.8, и у вас уже стоял Python 3.7). Итак, если вы введете pip в терминале, для какого интерпретатора Python вы установите пакет?
А что происходит, когда я нахожусь в активированной среде?
Во-первых, если вы пользуетесь Windows, вам все равно захочется использовать python-m pip, чтобы вы в своей среде могли обновить pip.
Во-вторых, даже если вы используете другую операционную системы, я бы сказал, что все равно нужно пользоваться python-m pip, поскольку он будет работать независимо от ситуации. Он предупредит вас об ошибке, если вы забудете активировать среду, а любой человек, который за вами будет наблюдать, будет перенимать лучшие практики. И лично я не считаю, что экономия 10 нажатий на клавиатуру – весомая цена для неиспользования хорошей практики. А еще эта команда поможет вам предотвратить ошибки при написании сценариев автоматизации, которые будут выполнять заведомо некорректные операции, если вы забудете активировать среду.
ВСЕГДА пользуйтесь средой! Не ставьте все подряд в глобальный интерпретатор!
Когда мы говорим о том, как избежать путаницы при установке в Python, хочу подчеркнуть, что мы вообще не должны устанавливать ничего в глобальный интерпретатор Python, когда работаем локально (контейнеры – это совсем другое дело)! Если это предустановленный Python вашей системы, то в случае, если вы установите какую-то несовместимую версию библиотеки, на которую опирается ваша ОС, то фактически сломаете систему.
Но даже если вы установите отдельно для себя копию python, я все равно настоятельно не рекомендую ставить прямо в нее при локальной разработке. В конечном счете в своих проектах вы будете использовать различные пакеты, которые могут друг с другом конфликтовать, и у вас не будет четкого представления о зависимостях внутри ваших проектов. Гораздо лучше использовать среды, чтобы изолировать отдельные проекты и инструменты для них друг от друга. В сообществе Python используются два типа сред: виртуальные среды и conda среды. Существует даже специальный способ изолированной установки инструментов Python.
Если вам нужно установить инструмент
Для изолированной установки инструмента, я могу порекомендовать использовать pipx. Каждый инструмент получит свою собственную виртуальную среду, чтобы не конфликтовать с другими. Таким образом, если вы хотите иметь всего одну установку, к примеру, Black, вы можете работать, не сломав случайно свою единственную установку mypy.
Если вам нужна среда для проекта (и вы не пользуетесь conda)
Сегодня некоторые разработчики по-прежнему отдают предпочтение virtualenv, поскольку она доступна на Python 2 и в ней есть некоторые дополнительные функции. Лично меня мало интересуют дополнительные функции, и наличие интегрированной venv означает, что мне не нужно использовать pipx для установки virtualenv на каждой машине. Но если venv не отвечает вашим потребностям, и вы хотите виртуальную среду, то посмотрите, предлагает ли virtualenv то, что вам нужно.
Если вы используете conda
Если вы используете conda, то можете использовать среды conda для получения того же эффекта, который могут предложить виртуальные среды, предоставляемые venv. Я не собираюсь вдаваться в то, нужно ли вам использовать conda или venv в вашей конкретной ситуации, но если вы используете conda, то знаете, что вы можете (и должны) создавать среды conda для своей работы, вместо того чтобы устанавливать все подряд в свою системную установку. Так вы сможете получить четкое понимание того, какие зависимости есть у вашего проекта (и это хорошая причина, чтобы использовать miniconda вместо полноценной anaconda, поскольку в первой меньше десятой части объема последней).
Всегда есть контейнеры
Работать в контейнере – это способ не разбираться со средой вообще, так как вся ваша «машина» станет отдельной средой. До тех пор, пока вы не установили Python в систему контейнера, вы должны спокойно иметь возможность сделать глобальную установку, чтобы ваш контейнер оставался простым и понятным.
Повторюсь, чтобы вы действительно поняли суть…
Не устанавливайте ничего в свой глобальный интерпретатор Python! Всегда старайтесь использовать среду для локальной разработки!
Я уже не могу сказать, сколько раз мне приходилось помогать кому-то, кто думал, что pip устанавливал в один интерпретатор Python, а на самом деле устанавливал в другой. И это неизмеримое количество также относится к тем моментам, когда люди ломали всю систему или задавались вопросом, почему они не смогли установить что-то, что противоречило какой-то другой вещи, которую они поставили ранее для другого проекта и т.д. из-за того, что они не потрудились настроить среду на своей локальной машине.
Поэтому, чтобы и вы и я могли спать спокойно, используйте python-m pip и старайтесь всегда использовать среду.
Что такое PIP? Руководство начинающего Python-иста
В этом туториале вы научитесь:
Содержание
Быстрый старт с pip
Управление пакетами настолько важно, что pip был включен в установщик Python начиная с версий 3.4 для Python 3 и 2.7.9 для Python 2. Он используется в большинстве проектов на Python и делает его незаменимым инструментом для каждого питониста.
Возможно, вы захотите испытать приведенные в этом руководстве примеры в виртуальной среде, во‑избежании установки пакетов глобальной установки Python. Можно узнать о виртуальных средах в Виртуальная среда Python: Учебник для начинающих. В разделе Использование виртуальной среды из этого туториала вы узнаете об основах создание новых виртуальных сред.
Установка пакетов с pip
Python считается полностью упакованным языком. Подразумевается, что стандартная библиотека Python включает в себя обширнейший набор пакетов и модулей для разработчиков с их сценариями и приложениями.
В то же самое время у Python есть очень активное сообщество, которое предлагает на всеобщее рассмотрение просто огромный набор пакетов на «любой вкус и цвет», очень значительно способствующих разработке. Такие пакеты публикуются в Реестре пакетов Python, известном под интригующем именем PyPI (произносится как «ПиПей»). PyPI содержит обширную коллекцию пакетов, в том числе и виртуальные среды разработки, инструменты и библиотеки.
Многие из этих пакетов упрощают разработку на Python, предоставляя дружественные интерфейсы для функций, которые уже существуют в стандартной библиотеке. Например, можно написать скрипт, который извлекает содержимое веб-страницы, используя только стандартные библиотеки, включенные в Python:
В ответе можно прочитать Content-Type заголовка и распарсив его, используя модуль cgi извлечь имя набора символов кодировки страницы.
Примечание: в The Meaning of Underscores in Python описано, как с помощью подчёркивания разделить значения в кортеже.
Зная кодировку страницы, можно прочитать ответ и расшифровать его в текст. Можно запустить этот пример в консоли и посмотреть, как он работает:
Извлечение содержимого веб-страницы это очень даже приличная работа для такого маленького скрипта. К счастью, есть пакет Python, который за счет хорошего интерфейса ещё более упрощает HTTP‑запросы и позволяет делать именно то, что хотите.
Базовая установка пакета
В PyPI находится очень популярная библиотека для выполнения HTTP‑запросов, которая называется requests. Можно узнать все об этом в документации на официальном сайте.
В pip есть команда install для установки пакетов. Можно запустить его для установки пакета requests :
Команда pip install
; всегда ищет последнюю версию пакета и устанавливает его. Он также выполняет поиск зависимостей, перечисленных в метаданных пакета и устанавливает эти зависимости, чтобы пакет соответствовал всем необходимым требованиям.
Как видите, одной командой установки requests на самом деле было установлено несколько пакетов. Можно посмотреть метаданные пакета, используя команду show в pip :
Можно импортировать пакет requests как любой другой стандартный пакет, поскольку он теперь установлен в вашей среде.
Как можно видеть, requests.get() обрабатывает HTTP‑соединение и возвращает объект с ответом, аналогичный исходному примеру, но с некоторыми улучшениями интерфейса.
Не нужно иметь дело с кодировкой страницы, потому что в большинстве случаев requests справятся с этим. Тем не менее requests имеет гибкий интерфейс для обработки особых случаев с помощью requests.get().
Использование файлов требований
Команда pip install всегда устанавливает последнюю опубликованную версию пакета, но иногда вам может потребоваться установить конкретную версию, которая, как вы знаете, работает с вашим кодом.
Вы хотите создать спецификацию зависимостей и версий, которые вы использовали для разработки и тестирования своего приложения, чтобы не было сюрпризов при использовании приложения в production.
Версии пакетов будут соответствовать тем, которые перечислены в requirements.txt :
Можно отправить файл requirements.txt в систему контроля версий и использовать его для создания точной среды на других компьютерах.
Требования к тонкой настройке
Проблема с hardcoding версий ваших пакетов и их зависимостей заключается в том, что пакеты часто обновляются с исправлениями ошибок и безопасности, и вы, вероятно, захотите использовать их, как только они будут опубликованы.
Формат файла требований позволяет вам указывать версии зависимостей, используя логические операторы, которые дают вам некоторую гибкость, чтобы гарантировать обновление пакетов, но при этом определять базовые версии пакета.
Откройте файл requirements.txt в своем любимом редакторе и сделайте следующее изменения:
В этом примере обновлений не случилось потому, как здесь установлены последние версии, но если появится новая версия для одного из указанных пакетов, он будет обновлен.
В идеальном мире новые версии пакетов будут обратно совместимы и никогда не будут содержать новых ошибок. К сожалению, в реальном мире в новые версии могут быть внесены изменения, которые повредят ваше приложение. Синтаксис файла требований поддерживает дополнительные спецификаторы версий для точной настройки ваших требований.
Зависимости разработки vs. production
Не все пакеты, которые вы устанавливаете во время разработки, будут необходимы при эксплуатации приложений. В PyPI опубликовано много пакетов, которые являются исключительно нструментами или библиотеками, которые использовались в процессе разработки.
Например, вы, вероятно, захотите провести модульное тестирование своего приложения, для которого нужна среда модульного тестирования. Популярной платформой для модульного тестирования является pytest. Вы хотите установить его в своей среде разработки, но не хотите в своей production‑среде, потому что она там не нужна.
Вы создаете второй файл требований ( requests_dev.txt ), чтобы перечислить дополнительные инструменты для настройки среды разработки:
Для этого вам нужно использовать pip для установки обоих файлов требований: ( requests.txt ) и requests_dev.txt ). К счастью, pip позволяет вам указать дополнительные параметры в файле требований. Вы можете изменить requests_dev.txt ) для подключения требования из рабочего файла requests.txt ):
Фиксация требования для Production
Вы создали файлы требований для Production и разработки, добавили их в систему контроля версий. В файлах используются гибкие спецификаторы версий, чтобы вы могли использовать исправления ошибок, опубликованные вашими зависимостями. Вы также тестируете свое приложение и готовы развернуть его в рабочей среде.
Возможно, вы захотите убедиться, что версии зависимостей, которые вы развертываете в рабочей среде — это те же версии, которые вы использовали в своем конвейере интеграции или процессе сборки, потому что вы знаете, что все тесты пройдены и приложение работает.
Спецификаторы текущей версии не гарантируют, что те же версии будут развернуты в рабочей среде, поэтому вы хотите зафиксировать production‑требования, как вы видели ранее.
Поиск пакетов для использования
Когда вы станете более опытным Pythonist‑ом, появится набор пакетов, которые вы будете знать наизусть и которые вы будете использовать в большинстве своих приложений. Пакеты requirements.txt и pytest являются хорошими кандидатами на то, чтобы стать полезными инструментами в вашем наборе инструментов Python.
Давайте посмотрим, как эта команда нам поможет:
Допустим, вашему приложению необходим доступ к службе, которая использует для авторизации OAuth2. В идеале, есть библиотека, которая работает с requests или с похожим интерфейсом, который может нам помочь. Давайте поищем его в PyPI, используя pip :
В большинстве случаев вы хотите искать пакеты прямо на веб-сайте PyPI. Здесь, на PyPI, есть поиск по собственному реестру, который позволяет фильтровать результаты по метаданным пакетов, таким как инфраструктура, тема, состояние разработки и т.д.
Поиск с таким же запросом на PyPI в результате дает гораздо больше, но здесь его можно отфильтровать по разным категориям. Например, вы можете понять Intended Audience (Целевая аудитория) и выбрать Developers (Разработчики), поскольку вам нужна библиотека, которая поможет вам в разработке своего приложения. Кроме того, вы, вероятно, хотите, чтобы пакет был стабильным и готовым к production. Вы можете развернуть категорию Development Status (Состояние разработки) и выбрать Production/Stable (Производство/Стабильный):

Можно применять дополнительные фильтры и изменять условия поиска до тех пор, пока не найдете нужный вам пакет.
Результаты предоставляют ссылку на страницу пакета, которая содержит больше информации и, возможно, некоторую документацию. Давайте посмотрим на информацию для requests-oauth2 :

Страница проекта на GitHub содержит гораздо больше информации, и, кажется, имеет ссылке перейти в репозитарий project repository. Здесь вы получите дополнительную информацию о проекте и примеры использования.
Поиск хранилища исходного кода может быть бесценным ресурсом. Там вы можете найти некоторые подсказки о статусе проекта, посмотрев дату последних коммитов, количество запросов на извлечение, открытых вопросов и т.д.
Другой вариант найти пакет — Google. Популярные библиотеки Python будут отображаться в верхней части поисков Google, где вы сможете найти ссылку на нужный пакет в PyPI или его хранилище исходного кода.
Поиск подходящего пакета может потребовать некоторых исследований и времени, но значительно ускорит процесс разработки, как только вы его найдете.
Время от времени вам придется удалять пакеты. Вы либо нашли лучшую библиотеку для замены, либо это то, что вам действительно уже не нужно. Удаление пакетов может оказаться немного сложнее, чем вы думаете.
Удаление пакетов
Перед удалением пакета убедитесь, что вы выполнили команду show для удаляемого пакета:
Не забывайте всегда проверять зависимости пакетов при удалении. Вы, вероятно, захотите удалить все его зависимости, но удаление пакета, который используется другими пакетами, нарушит работу вашего приложения.
Альтернатива pip
pip является важным инструментом для всех Pythonist-ов и используется многими приложениями и проектами для управления пакетами. Этот туториал помог вам с основами, но сообщество Python очень активно предоставляет другие инструменты и библиотеки. У pip есть альтернативы, которые пытаются упростить и улучшить управление пакетами.
В этом разделе вы узнаете о других инструментах управления пакетами, доступных для Python.
Conda делает всё
Conda — менеджер пакетов, зависимостей и сред для многих языков, в том числе и Python. Фактически, его происхождение происходит от Anaconda, которая начиналась как пакет данных для Python.
Conda широко используется в приложениях для обработки данных и машинного обучения и использует собственный реестр для размещения совместимых пакетов.
Conda не только позволяет вам управлять зависимостями пакетов, но также управляет виртуальными средами для ваших приложений, устанавливает совместимые дистрибутивы Python и упаковывает ваше приложение для развертывания в рабочей среде.
Настройка Python для машинного обучения в Windows — это отличное введение в Conda, в котором рассматривается управление пакетами и средой. Единственная информация, относящаяся к Windows, касается установки, поэтому она по-прежнему актуальна, если вы используете другую платформу ОС.
Pipenv
Pipenv — это еще один инструмент управления пакетами, который «стремится принести лучшее из всех упаковочных миров» в Python. Он завоевывает большую популярность среди сообщества Python, поскольку объединяет виртуальную среду и управление пакетами в одном инструменте.
Pipenv: руководство по новому инструменту упаковки Python — отличное начало для знакомства с Pipenv и его подходом к управлению пакетами. Несмотря на то, что статья помечена как intermediate (промежуточная), автор проделал большую работу, чтобы убедить читателя в доступности и необходимости статья для всех, кто начинает работать с Python.
Poetry
Если вы пришли из JavaScript и npm, то Poetry будет выглядеть очень знакомо. Poetry выходит за рамки управления пакетами, помогая создавать дистрибутивы для приложений и библиотек, развертывать их в PyPI. В
Для помощи вам в How to Publish an Open-Source Python Package to PyPI есть хорошее введение в Poetry, которое будет полезно для начала работы.
Python предоставляет обширную стандартную библиотеку, подходящую для разработки всевозможных приложений, но активное сообщество Python предоставляет еще больший набор инструментов и библиотек, которые ускоряют разработку приложений Python.
Эти инструменты и библиотеки публикуются в реестр пакетов Python (PyPI), а pip позволяет разработчикам устанавливать их в свои прикладные среды.
В этом уроке вы узнали о том как:
Не стесняйтесь обращаться в разделе комментариев ниже с любыми вопросами, которые у вас могут возникнуть, и вы всегда можете получить дополнительную информацию на pip странице документации.












