Инструмент Pipenv: менеджер зависимостей для проектов Python
В этом руководстве вы узнаете, как установить инструмент Pipenv в Windows и как настроить проект с новой виртуальной средой с помощью менеджера зависимостей Pipenv в Python.
- Подготовка к работе
- Установка Pipenv в Windows
- Создание нового проекта
- Устранение предупреждения о неразрешенном импорте в коде VS
Подготовка к работе
Перед установкой инструмента Pipenv на вашем компьютере должны быть установлены Python и pip.
Сначала откройте командную строку или Windows Powershell и введите следующую команду.
python -V
Обратите внимание, что буква V в данной команде заглавная. Если вы видите версию Python, подобную следующей:
Python 3.8.5
…тогда на вашем компьютере уже установлен Python. В противном случае вам необходимо сначала его установить.
Затем используйте следующую команду, чтобы проверить, есть ли на вашем компьютере инструмент pip:
pip -V
Он вернет что-то вроде этого:
pip 20.2.4 from C:\Users\<username>\AppData\Roaming\Python\Python38\site-packages\pip(python 3.8)
Установка Pipenv в Windows
- Сначала используйте следующую команду для установки инструмента Pipenv:
pip install pipenv
- Во-вторых, замените в следующих путях и добавьте их в переменную среды PATH:
c:\Users\<username>\AppData\Roaming\Python\Python38\Site-Packages C:\Users\<username>\AppData\Roaming\Python\Python38\Scripts
Важно отметить, что после изменения переменной среды PATH вам необходимо закрыть командную строку и снова открыть ее.
- В-третьих, введите следующую команду, чтобы проверить, правильно ли установлен Pipenv:
pipenv -h
Если перед вами следующий вывод, значит, вы успешно установили инструмент Pipenv.
Usage: pipenv [OPTIONS] COMMAND [ARGS]... ...
Однако, если вы увидите следующее сообщение:
pipenv shell 'pipenv' is not recognized as an internal or external command, operable program or batch file.
Затем вам следует проверить шаг 2, чтобы узнать, добавили ли вы уже пути к переменной среды PATH.
Создание нового проекта
Рассмотрим пошагово, как создать новый проект.
- Сначала создайте новую папку проекта, например, crawler.
- Во-вторых, перейдите в папку искателя и установите пакет запросов с помощью команды Pipenv:
pipenv install requests
Выход:
Creating a Pipfile for this project… Installing requests… Adding requests to Pipfile's [packages]… Installation Succeeded Pipfile.lock not found, creating… Locking [dev-packages] dependencies… Locking [packages] dependencies… Locking...Building requirements... Resolving dependencies... Success! Updated Pipfile.lock(fbd99e)! Installing dependencies from Pipfile.lock(fbd99e)… ================================ 0/0 - 00:00:00
И вы увидите, что Pipenv создал два новых файла: Pipfile и Pipfile.lock. Кроме того, была установлена виртуальная среда. Если вы посмотрите на папку проекта, вы не увидите папку виртуальной среды.
Чтобы найти расположение виртуальной среды, используйте следующую команду:
pipenv --venv
В Windows она вернет что-то вроде этого:
C:\Users\<username>\.virtualenvs\crawler-7nwusESR
Обратите внимание, что это имя пользователя, которое вы используете для входа в Windows.
- В-третьих, создайте новый файл с именем app.py в папке проекта и добавьте в него следующий код:
import requests response = requests.get('https://www.python.org/') print(response.status_code)
В этом коде мы импортировали сторонний модуль запросов, использовали функцию get(), чтобы выполнить HTTP-запрос к URL-адресу https://www.python.org/ и отобразить код состояния(200).
- В-четвертых, запустите файл app.py из терминала с помощью команды Python:
python app.py
Он покажет следующую ошибку:
ModuleNotFoundError: No module named 'requests'
Причина в том, что Python не смог найти новую виртуальную среду. Чтобы это исправить, вам необходимо активировать виртуальную среду.
- В-пятых, используйте следующую команду для активации новой виртуальной среды:
pipenv shell
Если вы сейчас запустите app.py, он должен работать правильно:
python app.py
Выход:
200
Код состояния 200 означает, что HTTP-запрос выполнен успешно.
- В-шестых, используйте команду выхода, чтобы деактивировать виртуальную среду:
exit
Устранение предупреждения о неразрешенном импорте в коде VS
Если вы используете VS Code, вы можете получить предупреждение о неразрешенном импорте. Причина в том, что код VS не знает, какой интерпретатор Python использовать.
Поэтому вам необходимо переключить интерпретатор Python на тот, который находится в новой виртуальной среде:
Сначала щелкните текущий интерпретатор Python в правом нижнем углу кода VS:
Во-вторых, выберите интерпретатор Python из списка:
Кроме того, вам необходимо изменить параметр python.jediEnabled в файле settings.json на True:
Чтобы открыть файл settings.json, откройте палитру команд с помощью сочетания клавиш CTRL + SHIFT + P в Windows или CMD + SHIFT + P в macOS:
И измените значение на True следующим образом:
После этого вам следует сохранить файл и перезапустить VS Code для внесения изменений.