Tutorial Material

Virtual muhit (venv)

Share to
Python virtual environment

Virtual environment - bu bitta loyiha uchun ajratilgan (isolated) Python muhiti. U turli loyihalar orasidagi dependency conflict'larni oldini oladi. Amaliyotda har bir loyiha uchun alohida environment ishlating, shunda har bir loyiha o'zining package versiyalarini mustaqil saqlaydi.

Nega virtual environment muhim?

Jamoa va production muhitda virtual environment - deyarli standart talab:

Virtual environment bo'lmasa, loyihalar orasidagi versiya ziddiyatlarini topish va hal qilish qiyinlashadi.

Built-in modul: venv

Python standard library'da venv bor. Bu default va eng portable yondashuv.

1. Virtual environment yaratish

# Windows
py -m venv .venv
python -m venv .venv

# macOS / Linux
python3 -m venv .venv

2. Environment'ni aktivlashtirish

# Windows (PowerShell)
.venv\Scripts\Activate.ps1

# Windows (cmd)
.venv\Scripts\activate.bat

# macOS / Linux
source .venv/bin/activate

Aktivlashtirgandan so'ng, shell odatda (.venv) ni ko'rsatadi. Faol Python interpreter'ni quyidagicha tekshirish mumkin:

python -c "import sys; print(sys.executable)"

3. Package'larni environment ichida o'rnatish

python -m pip install requests
python -m pip list

Doim aktivlashtirgandan keyin o'rnating, shunda package'lar global Python'ga emas, .venv ichiga tushadi.

4. Deactivate

deactivate

Istalgan payt 2-qadamdagi buyruq bilan qayta aktivlashtirishingiz mumkin.

Dependency'larni saqlash va qayta ishlatish

python -m pip freeze > requirements.txt
python -m pip install -r requirements.txt

Bu usul turli kompyuterlarda bir xil o'rnatishni qayta tiklashga yordam beradi. requirements.txt ni version control'ga commit qiling, shunda jamoa a'zolari bir xil dependency set'ni o'rnatadi.

Ixtiyoriy zamonaviy vosita: uv

uv environment va package'larni tez ishlash bilan boshqarishi mumkin.

O'rnatish (bir martalik):

python -m pip install uv
# or on Windows:
py -m pip install uv

Batafsil: uv documentation

uv venv
uv pip install requests

venv - standard library'dagi rasmiy yechim, uv esa ixtiyoriy unumdorlik vositasi.

Ko'p uchraydigan xatolar