Питхон виртуелна окружења у 2026: венв, ув, пипк, поезија — Када користити које
Сваки водич за Питхон каже „користите виртуелно окружење“ и иде даље. Ово иде додатним кораком: шта је венв заправо, четири алата које вреди знати у 2026. години, стабло одлучивања од 60 секунди за одабир правог и две грешке које кваре ваше подешавање у року од недељу дана.
Шта је виртуелно окружење заправо
Венв је директориј који садржи симболичку везу Питхон интерпретера плус приватни `site-packages/`. Када је "активиран", PATH ставља испред <venv>/bin, тако да python и pip у вашој љусци показују на копије венв-а. pip install X пише у венв-ове site-packages/, а не у системски Питхон.
То је то. Нема магије. То је фасцикла са симболичком везом и pyvenv.cfg.
BASH$ python -m venv .venv $ ls .venv/ bin/ include/ lib/ pyvenv.cfg $ cat .venv/pyvenv.cfg home = /opt/homebrew/opt/python@3.13/bin include-system-site-packages = false version = 3.13.2
Све остало (активне скрипте, омоти, менаџери пакета) је практичност поврх овог облика.
Зашто ти треба, увек
Без венв-а, pip install X уписује у ваш систем Питхон-ове site-packages/. три проблема:
1. Конфликти. Пројекту А је потребан django==4.2; Пројекту Б је потребан django==5.1. Немогуће без венва.
2. Репродуцибилност. „Ради на мојој машини“ је системски проблем Питхон-а. Венв снимак ЈЕ окружење.
3. Чишћење. Желите ли да избришете пројекат? Избришите његову фасциклу венв. Систем-Питхон инсталације се акумулирају заувек.
На мацОС-у 12+ и већини Линук дистрибуција, систем-Питхон је сада у власништву ОС-а — пип може чак одбити да се инсталира без --break-system-packages. То је наговештај.
4 алата вредна познавања
1. venv — основна линија стдлиб-а
Испоручује се са сваком инсталацијом Питхон-а 3.3+. Нула зависности. Универзални резервни део:
BASHpython -m venv .venv # create source .venv/bin/activate # macOS / Linux .venv\Scripts\activate # Windows pip install -r requirements.txt deactivate # or close the shell
Користите када: пишете водич, осигуравате да скрипта функционише свуда или у закључаном ЦИ где не можете ништа да инсталирате.
2. uv — модерни подразумевани (2026)
Захрђали, 10-100к брже од пип-а. Замењује венв + пип + пип-тоолс + пиенв-довнлоад-питхон. Погледајте наш ув дееп-диве за комплетан обилазак.
BASHuv venv # create venv (uses current Python) uv venv --python 3.13 # or download + pin a version uv pip install -r requirements.txt uv run pytest # run without activating uv add fastapi # append to pyproject.toml + install uv sync # install exactly what pyproject.toml says
Користите када: било који пројекат 2026 — соло, тим, ЦИ, Доцкер. Разлика у брзини на хладном кешу је стварна (45с пип → 2с ув на типичном Дјанго пројекту).
3. pipx — за ЦЛИ алате
Када инсталирате ЦЛИ као што је ruff, httpie, black, youtube-dl, mypy, не желите га у свом пројекту венв (зашто зависити од ruff да би import project.things радио?). И не желите то у систему Питхон (конфликти). pipx ставља сваки у свој изоловани венв, али излаже ЦЛИ глобално:
BASHpipx install ruff pipx install httpie pipx install black ruff check . # works from anywhere, no activation httpie GET api.github.com black .
Користите када: инсталирате ЦЛИ заснован на Питхон-у. Основно правило: pipx install X ако Кс испоручује извршни фајл који бисте покренули из било ког пројекта; uv pip install X ако је Кс библиотека коју import.
Модерна замена: uv tool install ruff ради исту ствар без засебне пипк инсталације. Изаберите било који.
4. poetry — зрело закључавање зависности (удео у опадању)
Пре него што је ув слетео, poetry је била модерна алатка за паковање. Одличан решавач зависности, детерминистички poetry.lock, тесна интеграција са pyproject.toml. Још увек солидан - али спорији од ув и додаје когнитивне напоре.
BASHpoetry new my-project poetry add fastapi poetry install poetry run pytest poetry publish
Користите када: постојећи пројекат већ користи поезију или су вам потребни додаци за поезију (нпр. poetry-plugin-export). За НОВЕ пројекте у 2026. uv ће вас брже одвести тамо уз мањи отисак.
Дрво одлучивања од 60 секунди
То је то. 90% Питхон програмера данас може да изабере са ове листе без потребе за pyenv, virtualenvwrapper, pew или conda.
Цонда — посебан случај
conda је посебан универзум: менаџер пакета + венв менаџер + Питхон дистрибутер + менаџер Ц-библиотеке, првенствено за научни Питхон. Ако радите тежак нумерички посао са numpy / scipy / pandas / ГПУ стековима којима су потребне упарене ЦУДА + цуДНН верзије, miniconda можда и даље вреди – унапред компајлирани бинарни фајлови штеде сате у односу на пип.
Иначе: обични ув је сада конкурентан и на научним скуповима (нумпи / пандас инсталације су секунде, а не минуте). Немојте посезати за цонда осим ако вам изричито није потребна Ц-библиотека за везивање, пип не може лако да произведе.
Две грешке које кваре ваше подешавање у року од недељу дана
1. Урезивање .venv/ у гит
Венв садржи:
- Апсолутне путање до ваше специфичне Питхон инсталације.
- Преведене
.pycдатотеке. - Бинарне датотеке које су специфичне за ОС.
Потврдите то → ваш саиграч на Виндовс-у не може ништа да покрене. Додајте .venv/ (и venv/, .env/) у свој .gitignore ПРВО, а затим креирајте венв.
2. Активирање у погрешној љусци
source .venv/bin/activate поставља енв варс само у ЦУРРЕНТ схелл. Ако отворите нову картицу терминала, вратили сте се на системски Питхон. Два сигурна обрасца:
1. Поново активирајте сваку сесију — стандардни ток.
2. `uv run` / `poetry run` / `python -m project` — никада се не активирајте. Покрените команде из нове љуске са префиксом алата. Одлично у Макефилес, ЦИ, нпм-скриптама, гит кукицама.
Правило за скрипте: ако се ради о једноструком покретању из ЦИ или Макефиле-а, НЕ активирајте — користите uv run pytest или пуну путању .venv/bin/pytest. Активација је само за интерактивне шкољке.
Миграција између алата
пип + венв → ув:
BASHrm -rf .venv uv venv uv pip install -r requirements.txt
Рекуирементс.ткт наставља да ради дословно. Два минута.
поезија → ув:
BASHuvx migrate-to-uv # community tool, converts pyproject.toml
венв → поезија:
BASHpoetry init poetry add $(pip freeze | cut -d= -f1)
Верификација
Након подешавања, увек проверите КОЈИ Питхон + пип користите:
BASH$ which python /path/to/project/.venv/bin/python # ✅ venv /opt/homebrew/bin/python # ❌ system, activation didn't take $ which pip /path/to/project/.venv/bin/pip # ✅ venv $ python -c "import sys; print(sys.prefix)" /path/to/project/.venv # ✅ venv
Ако which python покаже системску путању након активације, нешто није у реду — обично сте се активирали у подљусци која је већ изашла.
Виртуелна окружења су једна од ретких Питхон тема где је савремени одговор (2026) заиста једноставнији од историјског одговора. uv за нове пројекте, venv за скрипте, pipx за ЦЛИ. Готово.
Следећи корак: Питхон ДевОпс трацк покрива ув + руфф + Доцкер + модерни стек за примену Питхон-а — практичан рад са правим Питхон-ом који ради у вашем претраживачу.