DevGang
Авторизоваться

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

Если вы работаете над несколькими проектами на языке Python, то вам быстро понадобится иметь разные версии пакетов в зависимости от текущего проекта.

Для этого предназначены виртуальные среды, которые позволяют изолировать библиотеки между проектами. Существуют различные библиотеки, которые вы можете использовать, я покажу вам Venv и Pipenv.

Venv

Venv - это встроенный модуль для создания виртуальных сред в Python 3.

Сначала создадим простой скрипт, которому нужны два пакета:

import requests
import numpy

if __name__ == "__main__":

    # Use the requests library
    request = requests.get("https://httpbin.org/get")
    print("Response : ")
    print(request.text)

    # Use the numpy library
    print("Numpy version : " + numpy.__version__)

Создайте файл "requirements.txt":

requests>=2.25.1
numpy>=1.19.5

Затем можно воспользоваться следующими командами (не забудьте добавить "venv" в файл .gitignore):

# Create the venv
python -m venv venv

# Activate the venv
source venv/bin/activate

# Install the requirements
pip install -r requirements.txt

# Deactivate the venv
deactivate

Pipenv

Pipenv - это инструмент более высокого уровня, объединяющий управление пакетами и виртуальными средами с помощью Pipfile.

Сначала установите Pipenv:

brew install pipenv

Создайте файл "Pipfile", созданный для скрипта, над которым мы работаем:

(его также можно создать с помощью команды pipenv install)

[[source]]
url = "https://pypi.org/simple"
verify_ssl = true
name = "pypi"

[packages]
requests = ">=2.25.1"
numpy = ">=1.19.5"

[dev-packages]

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

# Inititiate the Pipfile (or install all packages)
pipenv install

# You can install packages (or edit Pipfile directly)
pipenv install requests
pipenv install numpy

# Activate/Deactivate the venv
pipenv shell  # and Ctrl + D to quit

# Alternatively, run a command inside the virtualenv
pipenv run python

# Uninstall the venv
pipenv --rm

Оба являются хорошими решениями для виртуальных сред, Venv встроен и легче в написании, а Pipenv быстрее и предоставляет больше возможностей, так что выбирайте то, что лучше подходит именно вам.

Вас также может заинтересовать Pyenv, дополнительный инструмент, предназначенный для управления различными версиями Python на вашем компьютере.

Источник:

#Python
Комментарии
Чтобы оставить комментарий, необходимо авторизоваться

Присоединяйся в тусовку

В этом месте могла бы быть ваша реклама

Разместить рекламу