Виртуальное окружение Python — найди свой рабочий способ
Короче, если кто-то недавно начал рыться в Python и столкнулся с этим виртуальным окружением — не пугайтесь. Я тоже сначала думал, что это какая-то магия для профи, а на самом деле там всё довольно просто, если понимать зачем оно нужно.
Суть в том, что виртуальное окружение изолирует пакеты от глобальной системы — чтобы одна версия библиотеки не портила работу другого проекта. Я всегда делаю так: переключаюсь в папку с проектом, там же создаю виртуалку командой python -m venv venv (или virtualenv, если оно есть). Потом активирую её — в Windows это venv\Scripts\activate, а в Linux/Mac — source venv/bin/activate. После этого ставлю все зависимости через pip, и ничего из системы не ломается.
Если сразу встают ошибки, попробуйте проверить версию Python (python --version), и не забудьте, что иногда сами IDE хотят работать с разными версиями. Ещё полезно всегда иметь requirements.txt, чтобы не забыть, что ставить — pip freeze > requirements.txt и потом pip install -r requirements.txt.
Кстати, если виртуалка вдруг не активируется или выдает ошибки, часто помогает пересоздать папку venv и внимательно посмотреть сообщения об ошибках. Можно ещё заморочиться с pipenv или poetry, но сам пока предпочитаю базовое venv — оно и проще, и понятно.
Кто как виртуалки юзает? Есть ли варианты, которые не утомляют при частых переключениях между проектами?