آموزش محیط مجازی در پایتون
محیط مجازی(Virtual Environment) چیست؟
محیط مجازی در پایتون، یک محیط مجزا یا ایزوله شده در رایانهی شما است، به طوری که میتوانید در آن، پروژههای پایتون خود را تست و اجرا کنید. این محیط به ما امکان میدهد تا وابستگیهای خاص پروژه را بدون تداخل با سایر پروژهها یا نصب اصلی پایتون مدیریت کنیم. به محیط مجازی، به چشم یک ظرفِ(container) جداگانه برای هر پروژهی پایتون فکر کنید.
- هر ظرف، یک مفسر پایتون مخصوص به خود را دارد.
- هر ظرف، پیکجهای نصب شدهی مخصوص به خود را دارد.
- هر ظرف، از سایر محیطهای مجازی جدا(ایزوله) شده است.
- هر ظرف، میتواند نسخههای متفاوتی از پکیج مشابه را داشته باشد.
استفاده از محیط مجازی مهم است، زیرا:
- از تداخل نسخههای پکیج بین پروژهها جلوگیری میکند.
- پروژهها را قابلحملتر(portable) و قابل تولید مجدد میکند.
- نصب پایتون روی سیستم شما را تمیز نگه میدارد.
- به ما امکان میدهد تا نسخههای مختلف پایتون را تست کنیم.
ایجاد یک محیط مجازی در پایتون
پایتون یک ماژول داخلی به نام venv دارد که از آن برای ایجاد محیطهای مجازی استفاده میشود. برای ایجاد یک محیط مجازی در رایانهی خود، خط فرمان(command prompt) را باز کنید، و به فولدری که میخواهید پروژهی خود را در آن ایجاد کنید بروید، سپس دستور زیر را تایپ کنید:
در ویندوز:
این دستور را اجرا کنید تا یک محیط مجازی به نام myfirstproject ایجاد شود:
C:\Users\Your Name> python -m venv myfirstproject
در مک و لینوکس:
$ python -m venv myfirstproject
دستور بالا، یک محیط مجازی را نصب میکند و یک فولدر به نام "myfirstproject" ایجاد میکند که حاوی سابفولدرها(زیرپوشهها) و فایلهایی مانند زیر است:
نتیجه:
ساختار فایل یا فولدر، مانند موارد زیر است:
myfirstproject
Include
Lib
Scripts
.gitignore
pyvenv.cfg
فعال کردن محیط مجازی در پایتون
برای استفاده از محیط مجازی در پایتون، باید آن را با استفاده از فرمان زیر فعال(activate) کنیم:
در ویندوز:
فعال کردن محیط مجازی:
C:\Users\Your Name> myfirstproject\Scripts\activate
در مک و لینوکس:
$ source myfirstproject/bin/activate
پس از فعالسازی، اعلان(prompt) تغییر میکند تا به ما نشان دهد که در حال کار در این محیط فعال هستید:
نتیجه در ویندوز:
این خط فرمان، مانند زمانی است که محیط مجازی فعال است:
(myfirstproject) C:\Users\Your Name>
نتیجه در مک و لینوکس:
(myfirstproject) ... $
نصب کردن پکیجها در پایتون
هنگامی که محیط مجازی شما فعال شد، میتوانید پکیجها را در آن، با استفاده از دستور pip نصب کنید. در زیر، ما میخواهیم یک پکیج به نام 'cowsay' را نصب کنیم:
در ویندوز:
نصب 'cowsay' در محیط مجازی:
(myfirstproject) C:\Users\Your Name> pip install cowsay
در مک و لینوکس:
(myfirstproject) ... $ pip install cowsay
نتیجه:
پکیج 'cowsay' تنها در محیط مجازی نصب شده است:
Collecting cowsay
Downloading cowsay-6.1-py3-none-any.whl.metadata (5.6 kB)
Downloading cowsay-6.1-py3-none-any.whl (25 kB)
Installing collected packages: cowsay
Successfully installed cowsay-6.1
[notice] A new release of pip is available: 25.0.1 -> 25.1.1
[notice] To update, run: python.exe -m pip install --upgrade pip
استفاده از پکیج
اکنون، ماژول 'cowsay' در محیط مجازی شما نصب شده است؛ اجازه دهید از آن برای نمایش دادن یک گاو سخنگو(talking cow) استفاده کنیم. یک فایل به نام test.py در رایانهی خود ایجاد کنید. میتوانید آن را در هرجا که بخواهید قرار دهید اما ما آن را در همان مکانی که فولدر myfirstproject قرار دارد، قرار میدهیم؛ نه در این فولدر، بلکه در جایی که این فولدر قرار دارد. حالا فایل مورد نظر را باز کنید و کدهای زیر را در آن قرار دهید:
مثال
اضافه کردن دو خط کد در فایل test.py:
import cowsay
cowsay.cow("Good Mooooorning!")
سپس، سعی کنید هنگامی که در محیط مجازی قرار دارید، این فایل را اجرا کنید:
در ویندوز:
اجرا کردن test.py در محیط مجازی:
(myfirstproject) C:\Users\Your Name> python test.py
در مک و لینوکس:
(myfirstproject) ... $ python test.py
بعنوان نتیجه، یک گاو در ترمینال شما نشان داده میشود:
نتیجه:
هدف ماژول 'cowsay'ترسیم یک گاو است که هر ورودی که به آن میدهیم را بگوید:
_________________
| Good Mooooorning! |
=================
\
\
^__^
(oo)\_______
(__)\ )\/\
||----w |
|| ||
غیرفعال کردن محیط مجازی
برای غیرفعال کردن محیط مجازی، از این فرمان استفاده کنید:
در ویندوز:
غیرفعال کردن محیط مجازی:
(myfirstproject) C:\Users\Your Name> deactivate
در مک و لینوکس:
(myfirstproject) ... $ deactivate
در نتیجه، اکنون به رابط خط فرمان عادی برمیگردید:
نتیجه
رابط خط فرمان عادی در ویندوز:
C:\Users\Your Name>
رابط خط فرمان عادی در مک و لینوکس:
$
اگر سعی کنید فایل test.py را در بیرون از محیط مجازی اجرا کنید، یک خطا دریافت خواهید کرد، زیرا 'cowsay' پیدا نمیشود. این ماژول تنها در محیط مجازی مورد نظر نصب شده است:
مثال
اجرای فایل test.py در بیرون از محیط مجازی در ویندوز:
C:\Users\Your Name> python test.py
اجرای فایل test.py در بیرون از مجیط مجازی در مک و لینوکس:
$ python test.py
نتیجه
ایجاد خطا، چونکه ماژول 'cowsay' مفقود شده است:
Traceback (most recent call last):
File "C:\Users\Your Name\test.py", line 1, in <module>
import cowsay
ModuleNotFoundError: No module named 'cowsay'
نکته: پروژهی myfirstproject هنوز در محیط مجازی وجود دارد، این پروژه فقط فعال نیست؛ اگر دوباره محیط مجازی را فعال کنیم، میتوانیم فایل test.py را اجرا کنیم، و نمودار مورد نظر نمایش داده خواهد شد.
حذف کردن محیط مجازی در پایتون
یک نکتهی جالب دیگر دربارهی کار با محیط مجازی، این است که وقتی به دلایلی میخواهیم آن را حذف کنیم، هیچ پروژه دیگری به آن وابسته نیست؛ و تنها، ماژولها و فایلهای درون محیط مجازی مورد نظر حذف خواهند شد. برای حذف(delete) کردن یک محیط مجازی، به سادگی میتوانید فولدر آن و تمام محتوای آن را حذف کنید. برای انجام این کار، مستقیماً میتوانید در سیستم فایل خود اقدام کنید، یا میتوانید از رابط خط فرمان مانند زیر استفاده کنید:
در ویندوز:
حذف کردن myfirstproject با استفاده از خط فرمان:
C:\Users\Your Name> rmdir /s /q myfirstproject
در مک و لینوکس:
$ rm -rf myfirstproject
منبع: www.w3schools.com/python
- بازدید: 40
1. سعی کنید نظرات شما مرتبط با مقاله ی مورد نظر باشد، در غیر این صورت پاسخ داده نخواهد شد.
2. سوالات خود را به صورت کوتاه بیان کنید و از پرسیدن چند سوال به طور همزمان خودداری کنید.
3. سوال خود را به طور واضح بیان کنید و از کلمات مبهم استفاده نکنید.