شده تا به حال روی پروژه ای مثل A دارین کار میکنین و میخواین به صورت موازی روی یه پروژه ی دیگه ای مثل B کاری کنین، به طوریکه در هر دو پروژه بخواین از پکیج های مشترک ولی با ورژن های مختلف استفاده کنین؟
شده تا به حال بخواین پکیجی رو در دایرکتوری دلخواه خودتون نصب کنین؟
اگه همچین مشکلاتی داشتین و یا دارین با من همراه باشین (:
برای اینکار از virtual environment استفاده میکنیم.
حالا این Virtualenvی که میگیم چی هست؟!!
یه ابزاری برای ساخت محیطی در پایتون هستش که پکیج هایی که به وسیله pip نصب میکنیم رو فقط در همون پروژه نگه داری میکنه. یعنی پکیج هایی که نصب میکنیم به صورت global نصب نمیشه.
در واقع ما میتونیم از یه پکیجی مثل ansible با یه ورژنی در یه پروژه استفاده کنیم و به طور همزمان از پکیج ansible اما با ورژن دیگه ای در پروژه ی دیگه استفاده کنیم.
۱ـ کافیه کد دستوری زیر رو بزنیم تا Virtualenv برامون نصب بشه.
pip3 install virtualenv
۲ـ دستور زیر یه محیطی به اسم projectnv (هر اسمی که دلمون بخواد میتونیم بزاریم) میسازه.
virtualenv projectnv
۳ـ حالا باید این محیط رو فعالش کنیم، برای اینکار از دستور زیر استفاده میکنیم.
source projectnv/bin/activate
*با انجام دستور بالا در ابتدای خط فرمان لینوکس باید اسم محیطی که فعال کردیم رو ببینیم، شبیه تصویر پایین.
۴ـ با زدن دستور زیر میتونیم مطمئن بشیم که آیا پایتون از همین محیطی که ساختیم داره استفاده میکنه یا نه.
which python3
*به تصویر زیر توجه کنید.
۵ـ خب حالا دیگه میتونیم پکیجی که میخوایم رو در همین دایرکتوری یا محیطی که ساختیم نصب کنیم و ازش در پروژمون استفاده کنیم (:
برای مثال پکیج requests رو نصب میکنیم:
pip3 install requests
*در نهایت اگه بخوایم ببینیم که واقعا پکیج requests در همین محیطی که ساختیم نصب شده یا نه، کافیه دستور زیر رو بزنیم.
pip3 show requests
**خروجی دستور بالا شبیه این تصویر هستش: