Обычное слово в ушах профессиональных программистов, но очень странные термины для новичков. Что это значит и как мы можем реализовать это в Python?
В этой статье я объясню концепцию виртуальных сред, объяснив причины их использования, а позже мы попытаемся использовать их в наших простых проектах Python.
Когда вы создаете какой-либо проект с использованием любого языка программирования, я полагаю, что вы будете использовать некоторые вспомогательные библиотеки/пакеты/зависимости, созданные другими разработчиками. Несколько причин, которые побуждают вас использовать их, могут заключаться в их простоте использования, и это действительно делает ваш код чище.
Например, в Python есть библиотека datetime, которая помогает выполнять арифметические действия с объектом DateTime или просто получать текущую информацию о дате и времени с помощью datetime.datetime.now(). Даже в Python есть библиотека для создания моделей глубокого обучения под названием Tensorflow.
Но, как вы могли или не осознавали, большинство этих зависимостей часто периодически выпускают новые версии самих себя. В некоторых выпусках представлены новые функции и исправлены предыдущие ошибки, но также могут быть удалены некоторые предыдущие функции. До этого момента вы, вероятно, могли догадаться, в чем проблема.
Когда ваш проект использует зависимость от определенной версии, у которой есть метод для выполнения какой-либо задачи, он может работать только с этой конкретной версией. Если вы используете свою глобальную среду (по умолчанию), вам может потребоваться обновить ее версию для других ваших проектов в будущем, и вы обнаружите, что некоторые из ваших прошлых проектов не работают должным образом, как это было в прошлом. Вот где виртуальная среда играет важную роль!
Виртуальная среда — это просто изолированное место, где вы хотите хранить все библиотеки/пакеты/зависимости, используемые в конкретном проекте.
Когда вы инициализируете виртуальную среду для своего нового проекта, подумайте о ней как о коробке. Все зависимости, которые вы устанавливаете в виртуальной среде, будут храниться в ящике и не будут доступны извне (глобально) и наоборот. Даже если вы обновите версию той же зависимости от глобальной среды, то, что внутри коробки, останется таким же, как и было.
Другими словами, вы можете создать свое приложение, не беспокоясь о том, что оно больше не будет работать!
Как настроить виртуальную среду в Python?
Создайте корневую папку для вашего нового проекта, откройте ее в своей среде IDE (я использую VSCode), создайте новый файл Python с любым именем, откройте новый терминал и введите эту строку кода в своем терминале.
python -m venv venv
Нажмите ENTER, и вы обнаружите, что папка с именем «venv» (последний термин) создается автоматически в корневой папке вашего проекта. На самом деле вы можете использовать любое имя для вашей виртуальной среды, но обычно мы используем термин «venv».
Поздравляем, вы успешно создали виртуальную среду для своего проекта, но сначала вам нужно активировать ее, введя эту строку кода на своем терминале и нажав ENTER.
.\venv\Scripts\activate
Если вы назвали свою виртуальную среду другим именем, просто измените часть «venv» на имя вашей виртуальной среды. Поскольку вы уже активировали свою виртуальную среду, приступайте к работе над своим проектом!
Когда вы закончите программировать, вы можете деактивировать виртуальную среду и вернуться к глобальной среде. Вы можете добиться этого, только набрав "deactivate" на своем терминале и нажав ENTER.