Virtual Environment
Python-д пакеж суулгахад pip install ашиглана. Гэвч бүх төслийн пакежийг нэг газар суулгавал асуудал гардаг — нэг төсөл requests==2.28 хэрэглэх, нөгөө нь requests==2.31 хэрэглэх бол мөргөлдөнө. Virtual environment нь тус бүр тусдаа орчин үүсгэж энэ асуудлыг шийддэг.
Яагаад virtual environment хэрэгтэй вэ?
Дараах хоёр нөхцлийг төсөөлөөрэй:
Төсөл А: Django==3.2 (хуучин серверийн код)
Төсөл Б: Django==5.0 (шинэ хөгжүүлэлт)
Хоёрыг нэг газар суулгах боломжгүй. Virtual environment нь тус бүрд тусдаа site-packages хавтас үүсгэж, хувилбарыг тусгаарладаг.
venv үүсгэх ба идэвхжүүлэх
Python 3.3-аас стандарт venv модуль орсон — нэмэлт пакеж суулгах шаардлагагүй:
# Шинэ virtual environment үүсгэх
python -m venv .venv
# Идэвхжүүлэх — Mac/Linux
source .venv/bin/activate
# Идэвхжүүлэх — Windows
.venv\Scripts\activate
# Идэвхжүүлсэн эсэхийг шалгах — (.venv) харагдана
(.venv) $ python --version
Идэвхжүүлсний дараа terminal-д (.venv) угтвар гарч ирнэ — та одоо тусгаарлагдсан орчинд байна. Суулгах пакеж бүр энэ орчинд л хадгалагдана.
pip ашиглах
# Пакеж суулгах
(.venv) $ pip install requests beautifulsoup4 fastapi
# Суусан пакежуудыг жагсаах
(.venv) $ pip list
# Хувилбар зааж суулгах
(.venv) $ pip install django==4.2
# Пакеж устгах
(.venv) $ pip uninstall requests
requirements.txt — пакежийн жагсаалт
Бусадтай хуваалцах, сервер дээр байрлуулахад бүх пакежийн жагсаалтыг файлд хадгална:
# Одоогийн пакежийг requirements.txt-д бичих
(.venv) $ pip freeze > requirements.txt
Үүссэн requirements.txt файл иймэрхүү харагдана:
annotated-types==0.7.0
anyio==4.7.0
beautifulsoup4==4.12.3
fastapi==0.115.0
requests==2.32.3
Шинэ компьютер эсвэл серверт нэг командаар бүгдийг суулгана:
# Шинэ орчинд бүх пакеж суулгах
(.venv) $ pip install -r requirements.txt
.gitignore — орчиноо git-д оруулахгүй байх
.venv хавтасыг git-д оруулах шаардлагагүй — requirements.txt байвал хэн ч өөрийн орчинд суулгаж болно:
# .gitignore файл дотор
.venv/
__pycache__/
*.pyc
.env
Ердийн ажлын урсгал
Шинэ Python төсөл эхлүүлэхдээ дараах дарааллыг дагана:
# 1. Хавтас үүсгэх
mkdir миний-төсөл && cd миний-төсөл
# 2. Virtual environment үүсгэх
python -m venv .venv
# 3. Идэвхжүүлэх
source .venv/bin/activate # Mac/Linux
# 4. Хэрэгтэй пакежүүдийг суулгах
pip install fastapi uvicorn
# 5. requirements.txt үүсгэх
pip freeze > requirements.txt
# 6. Кодоо бичиж эхлэх
Энэ дарааллыг нэг удаа дадвал дараа нь автоматаар хийж болно — мэргэжлийн хөгжүүлэгч бүр ийм ажлын урсгалтай байдаг.
Дараагийн хичээлд:
FastAPI үндэс — орчин үеийн хурдан Python web framework ашиглан анхны API-аа хэрхэн бүтээх, uvicorn дээр ажиллуулах талаар сурна.