🐍 პითონის პროექტების ეფექტური მართვა ვირტუალური გარემოებით¶
🔹 შესავალი¶
როდესაც მუშაობთ პითონის პროექტებზე, შეიძლება შეამჩნიოთ, რომ სხვადასხვა პროექტს სჭირდება პითონის ან პაკეტების განსხვავებული ვერსიები.
ყველა პაკეტის გლობალურად დაყენებამ შეიძლება გამოიწვიოს კონფლიქტები.
👉 აქ ჩნდება ვირტუალური გარემო — ინსტრუმენტი, რომელიც ქმნის იზოლირებულ სივრცეს თითოეული პროექტისთვის და უზრუნველყოფს სუფთა და ეფექტურ მართვას.
🔹 რა არის ვირტუალური გარემო?¶
ვირტუალური გარემო არის თქვენი პითონის პროექტისთვის განკუთვნილი „ქვიშის ყუთი“.
ეს არის ცალკე დირექტორია, რომელიც შეიცავს:
- პითონის კონკრეტულ ვერსიას
- ყველა იმ პაკეტს, რაც თქვენს პროექტს სჭირდება
📖 ანალოგია: ისევე, როგორც სკოლაში სხვადასხვა საგნისთვის ცალკე რვეული გაქვთ, ვირტუალური გარემო ინარჩუნებს თითოეული პროექტის დამოკიდებულებებს განცალკევებულად.
🔹 რატომ გამოვიყენოთ ვირტუალური გარემოები?¶
- ✅ კონფლიქტების თავიდან აცილება – ერთი პროექტი იყენებს
requests v2.25
, ხოლო მეორეrequests v2.28
-ს. - ✅ სუფთა განვითარება – გლობალური Python რჩება სუფთა.
- ✅ განმეორებადობა –
requirements.txt
ფაილით სხვასაც შეუძლია ზუსტად იგივე გარემოს შექმნა. - ✅ ექსპერიმენტები – უსაფრთხოდ გამოსცადეთ ახალი პაკეტები.
- ✅ პორტაბელურობა – პროექტი ერთნაირად იმუშავებს სხვა კომპიუტერზეც.
🔹 როგორ შევქმნათ ვირტუალური გარემო¶
1. შექმნა¶
2. გააქტიურება¶
- Windows-ზე
- macOS/Linux-ზე
👉 ტერმინალში გამოჩნდება (venv)
— ეს ნიშნავს, რომ ვირტუალური გარემო აქტიურია.
3. პაკეტების დაყენება¶
4. დეაქტივაცია¶
🔹 დამოკიდებულებების მართვა¶
-
ჩამონათვალის შექმნა
-
დაყენება სხვა გარემოში
🔹 საუკეთესო პრაქტიკა¶
- გამოიყენეთ ერთი ვირტუალური გარემო თითო პროექტზე
- დაარქვით გარემოს სტანდარტული სახელი:
venv
ან.venv
- ყოველთვის შექმენით requirements.txt
- წაშალეთ გარემო, თუ პროექტი აღარ გჭირდებათ
- გამოიყენეთ Git კოდის ვერსიების და გარემოს მართვისთვის
🔹 venv-ის ალტერნატივები¶
- virtualenv – ძველი ვერსიებისთვის
- poetry / pipenv – დამოკიდებულებებისა და გარემოს მართვა ერთში
- conda – პოპულარული მონაცემთა მეცნიერებაში
🔹 პრობლემების გადაჭრა¶
- ❌
command not found
→ დარწმუნდით, რომ Python PATH-შია - ❌ არასწორი ვერსია → გამოიყენეთ
python3 -m venv venv
- ❌ პაკეტი ვერ მოიძებნა → დარწმუნდით, რომ გარემო გააქტიურებულია
🔹 დასკვნა¶
ვირტუალური გარემოები:
- ინარჩუნებენ პროექტებს ორგანიზებულად
- თავიდან გვარიდებენ კონფლიქტებს
- აადვილებენ თანამშრომლობას