📝 Python

Виртуальные окружения в Python: зачем и как

0
Author
04e5cc8b-58ac-4bdc-bdee-661bbb
📅
Published
08.05.2026
⏱️
Reading time
1 min
👁️
Views
31
🌱
Level
Beginner

Когда начинаешь второй Python-проект и ставишь pip install requests — эта библиотека устанавливается глобально, для всей системы. Сначала кажется это удобным. Потом возникают проблемы.

Проблема: конфликт версий

Проект A требует requests==2.28
Проект B требует requests==2.31

Оба проекта на одной машине. Установить обе версии глобально нельзя — только одна.

Именно для этого существуют виртуальные окружения (virtual environments, venv).

Что такое venv

Виртуальное окружение — это изолированная папка с:
- Отдельным интерпретатором Python
- Отдельным pip
- Отдельными пакетами

Каждый проект — своё окружение. Пакеты из одного проекта не видят другой.

project-a/
├── .venv/          ← окружение проекта A (requests 2.28)
└── main.py

project-b/
├── .venv/          ← окружение проекта B (requests 2.31)
└── main.py

Создание и активация

Создать

python -m venv .venv

Точка в имени .venv — соглашение. Папку видно в файловом менеджере только если показывать скрытые файлы.

Активировать

# Mac / Linux:
source .venv/bin/activate

# Windows PowerShell:
.venv\Scripts\Activate.ps1

# Windows cmd:
.venv\Scripts\activate.bat

После активации в терминале появится (.venv) в начале строки — это признак что окружение активно.

Проверить

which python     # должен показать путь внутри .venv (Mac/Linux)
where python     # Windows

Деактивировать

deactivate

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

После активации все команды pip install работают только в этом окружении:

pip install requests python-dotenv

Проверить что установлено:

pip list

requirements.txt — фиксируем версии

Чтобы другой разработчик (или CI/CD) мог воспроизвести то же окружение:

# Записать текущие пакеты с версиями:
pip freeze > requirements.txt

# Установить из файла:
pip install -r requirements.txt

Содержимое requirements.txt:

requests==2.31.0
python-dotenv==1.0.0
certifi==2024.2.2
...

Что добавить в .gitignore

Папку .venv не коммитят — она большая и создаётся из requirements.txt:

.venv/
__pycache__/
*.pyc

Частые ошибки

Установил пакет но программа не находит

Скорее всего venv не активирован. Проверьте (.venv) в терминале.

Ошибка на Windows: «cannot be loaded because running scripts is disabled»

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

VS Code не видит .venv

Ctrl+Shift+P → Python: Select Interpreter → выберите интерпретатор из .venv.

Итог

Одно правило: один проект — одно виртуальное окружение. Это защищает от конфликтов версий и делает проект воспроизводимым на любой машине.

Your reaction to the article

💬 Comments (0)

🔐 Sign in to leave a comment
🚪 Login
💭

No comments yet

Be the first to share your opinion about this article!

🔗 Similar

Similar articles

Continue learning with these materials

📝

Модуль datetime: работа с датами и временем

datetime — стандартный модуль Python для работы с датами и временем. Входит в стандартную библиотеку,...

📅 08.05.2026 👁️ 30
📝

.env файлы и переменные окружения: секреты вне ко…

Представь что ты написал программу с API-ключом прямо в коде и залил её на GitHub....

📅 08.05.2026 👁️ 34
📝

argparse: аргументы командной строки в Python

Когда скрипт вырастает из игрушки в инструмент, input() становится неудобным. Профессиональные CLI-программы принимают аргументы при...

📅 08.05.2026 👁️ 30

Did you like the article?

Subscribe to our updates and receive new articles first. Grow with PyLand!