Заметки о решаемых задачах АйТишников

Сделал - запиши. Нашёл - сохрани :)

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

Виртуальное окружение Python (venv)

Виртуальное окружение Python (venv)

 

 

 

Настройка виртуального окружения

Устанавливать инструмент виртуального окружения venv не нужно — он входит в стандартную библиотеку Python.

Создание виртуального окружения

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

python3 -m venv .venv

Где:
-m — флаг для запуска venv как исполняемого модуля.
venv — сам модуль.
.venv — название папки виртуального окружения (где будут храниться библиотеки нашего проекта).

В результате будет создан каталог .venv содержащий копию интерпретатора Python, стандартную библиотеку и другие вспомогательные файлы.
Все новые пакеты будут устанавливаться в .venv/lib/python3.x/site-packages/.

Активация виртуального окружения

Активируем виртуальное окружение, это позволит нам устанавливать пакеты локально, то есть в нашей виртуальной среде:

source .venv/bin/activate

source выполняет bash-скрипт без запуска дополнительного bash-процесса.

Проверить успешность активации можно по приглашению оболочки. Она будет выглядеть примерно так:

(.venv) 
┌─[user@PC]─[~/PyProject/github/fskblg]
└──╼ $

Также новый путь до библиотек можно увидеть выполнив команду:

python3 -c "import site; print(site.getsitepackages())"

Автоматическая активация виртуального окружения

На практике, для автоматической активации перед запуском скрипта, создают скрипт-обертку на bash:

Тело скрипта

#!/usr/bin/env bash
source $BASEDIR/venv/bin/activate
python $BASEDIR/my_app.py

Теперь можно установить права на исполнение:

chmod +x myapp/run.sh

и запустить обертку:

./myapp/run.sh

Деактивация виртуального окружения

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

deactivate

 


 

Что такое виртуальные окружения?

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

Установка Python

  1. Проверка установки Python: Откройте терминал и выполните команду:

    python3 --version
    

    Если Python установлен, вы увидите его версию. Если нет, то установите его:

    sudo apt update
    sudo apt install python3 python3-venv
    

    Установка python3-venv необходима для работы с виртуальными окружениями.

Создание виртуального окружения

  1. Создайте директорию для вашего проекта (если её ещё нет):

    mkdir my_project
    cd my_project
    
  2. Создайте виртуальное окружение:

    Выполните следующую команду для создания виртуального окружения. Здесь venv — это имя директории, в которой будут храниться файлы окружения.

    python3 -m venv venv
    

    После выполнения этой команды у вас будет создана папка venv в директории вашего проекта.

Активация виртуального окружения

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

source venv/bin/activate

После активации командная строка изменится, и вы увидите имя вашего окружения в начале:

(venv) user@hostname:~/my_project$

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

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

  1. Установите пакет:

    Например, установим пакет requests:

    pip install requests
    
  2. Проверьте установленные пакеты:

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

    pip list
    

    Вы должны увидеть requests в списке.

Использование пакетов

Теперь вы можете использовать установленные пакеты в вашем проекте. Создайте файл app.py:

# app.py
import requests

response = requests.get('https://api.github.com')
print(response.status_code)

Запустите этот файл:

python app.py

Вы должны увидеть код статуса ответа, например 200, если запрос успешен.

Деактивация виртуального окружения

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

deactivate

Теперь ваша командная строка вернется к обычному виду, и вы сможете работать вне виртуального окружения.

Удаление виртуального окружения

Если вам больше не нужно виртуальное окружение, вы можете его удалить:

rm -rf venv

Заключение

Использование виртуальных окружений в Python на Linux — это мощный инструмент для управления зависимостями и изоляции проектов. Это особенно важно, если у вас несколько проектов, которые могут требовать разные версии библиотек. Следуя приведенным выше шагам, вы сможете эффективно создавать и управлять виртуальными окружениями для своих Python-проектов.

 

23 сентября 2024, 13:55    Александр Linux 0    710 0

 

 

 

 



Комментарии ()

    Вы должны авторизоваться, чтобы оставлять комментарии.