Добавить в корзинуПозвонить
Найти в Дзене
Python Pro🐍

Всё, что нужно знать о виртуальном окружении venv в Python

Привет! Если вы только начинаете свой путь в мире Python, то наверняка сталкивались с ситуацией: в одном проекте всё работает, а в другом, казалось бы, с похожим кодом — ничего. Ошибки, конфликты версий… Знакомо? Не переживайте, это нормальная проблема, и у неё есть простое и элегантное решение — виртуальное окружение. Я объясню, что это такое, почему без него не обойтись, и как его настроить за 5 минут. Поверьте, это изменит ваш подход к программированию навсегда! Представьте, что у вас есть мастерская, и вы работаете сразу над несколькими проектами. Для одного вам нужен набор инструментов "А", а для другого — набор "Б". И вот незадача: некоторые инструменты из набора "А" несовместимы с инструментами из набора "Б". Если вы будете просто сваливать всё в одну кучу, скоро наступит хаос. Виртуальное окружение — это как отдельные, аккуратные ящики для каждого вашего проекта. В ящик "Проект 1" вы кладёте только те инструменты, которые ему нужны, и их конкретные версии. В ящик "Проект 2" — с
Оглавление

Почему ваш код без этого сломается? Проще не бывает: гайд по виртуальному окружению в Python

Привет! Если вы только начинаете свой путь в мире Python, то наверняка сталкивались с ситуацией: в одном проекте всё работает, а в другом, казалось бы, с похожим кодом — ничего. Ошибки, конфликты версий… Знакомо? Не переживайте, это нормальная проблема, и у неё есть простое и элегантное решение — виртуальное окружение.

Я объясню, что это такое, почему без него не обойтись, и как его настроить за 5 минут. Поверьте, это изменит ваш подход к программированию навсегда!

Что за «виртуальное окружение» и зачем оно нужно? 🤔

Представьте, что у вас есть мастерская, и вы работаете сразу над несколькими проектами. Для одного вам нужен набор инструментов "А", а для другого — набор "Б". И вот незадача: некоторые инструменты из набора "А" несовместимы с инструментами из набора "Б".

Если вы будете просто сваливать всё в одну кучу, скоро наступит хаос. Виртуальное окружение — это как отдельные, аккуратные ящики для каждого вашего проекта. В ящик "Проект 1" вы кладёте только те инструменты, которые ему нужны, и их конкретные версии. В ящик "Проект 2" — свои. Они не пересекаются и не мешают друг другу.

Главные плюсы:

  • Никаких конфликтов! Каждый проект изолирован.
  • Порядок в системе. Ваш основной Python остаётся чистым.
  • Лёгкий перенос. Вы можете легко поделиться своим проектом с другом или перенести его на сервер.

Как создать свою «мастерскую» за 3 шага?

В Python уже есть всё, что нам нужно, в стандартной библиотеке. Ничего дополнительно качать не придётся.

Шаг 1: Создаём нашу «коробку»

Откройте терминал или командную строку и перейдите в папку своего проекта. Затем напишите всего одну команду:

python -m venv venv
  • python -m venv — это команда для создания виртуального окружения.
  • venv — это название папки, в которой будет жить наше окружение. Можете назвать её как угодно, но venv — это стандарт, который используют все.

В вашей папке появится новая папка venv, и это наш "ящик".

Шаг 2: Входим в «мастерскую»

Чтобы начать работать внутри нашей новой среды, её нужно «активировать».

  • Если у вас Windows:
venv\Scripts\activate
  • Если у вас macOS или Linux:
source venv/bin/activate

Когда вы сделаете это, в начале строки терминала появится (venv). Это значит, что вы находитесь внутри вашего изолированного окружения. Теперь всё, что вы будете устанавливать, попадёт только сюда!

Шаг 3: Устанавливаем библиотеки

Теперь можно спокойно ставить всё, что нужно для проекта. Например, библиотеки requests и pandas:

pip install requests pandas

Эти библиотеки теперь будут доступны только в этом проекте. Если вы создадите новый проект и не активируете в нём окружение, этих библиотек там не будет.

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

deactivate

Как передать проект другому человеку? 🤝

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

  1. Создаём список:
    Находясь в активированном окружении, введите:
pip freeze > requirements.txt


Эта команда создаст файл requirements.txt с полным списком всех библиотек, которые вы использовали, и их версиями.

  1. Устанавливаем всё сразу:
    Вашему другу нужно только создать своё окружение, активировать его и выполнить одну команду:
pip install -r requirements.txt


И всё! Проект заработает, как у вас.

Вот и всё! Теперь вы знаете, как создавать виртуальное окружение, и ваши проекты всегда будут работать стабильно. Это один из самых важных навыков, который отличает новичка от профессионала. Если у вас остались вопросы, пишите в комментариях!