وقتی وارد دنیای پایتون می شیم، یکی از مهارت های خیلی مهم برای هر برنامه نویس، مدیریت پکیج ها هست. تو این بین، ابزار pip
(Python Package Installer) به عنوان یکی از بهترین و پرطرفدارترین روش ها برای نصب و اداره کردن بسته های پایتون شناخته شده. تا حالا فکر کردی چطوری می تونی با استفاده از pip
، روند توسعه نرم افزارت رو راحت تر و سریع تر کنی؟
تو این مقاله، قراره حسابی به سراغ pip
بریم. از تاریخچه و کاربردهاش گرفته تا روش نصب و کار باهاش تو پروژه های مختلف. علاوه بر این، نشون می دیم چطور با دستورات کلیدی pip
، بسته های مورد نیازت رو به سادگی مدیریت کنی. می دونی که pip
می تونه تو مدیریت وابستگی ها (dependencies) و حل مشکلات معمول خیلی کمک کنه؟
یه سری نکات و ترفندهای کاربردی هم داریم که باعث می شه بهتر بتونی از pip
استفاده کنی. همراه ما باش تا با مزایای این ابزار آشنا بشی و یاد بگیری چطور پروژه های پایتونی خودتو به بهترین شکل اداره کنی.
فرصت رو از دست نده! تا آخر مقاله بمون و با دنیای جالب و جذاب pip آشنا شو.
تو این قسمت از مقاله می خوایم سراغ ابزار pip بریم و ببینیم چه کاربردهایی داره. pip که مخفف Python Package Installer هست، یکی از ابزارهای خیلی مهم تو دنیای پایتون حساب میشه و به برنامه نویس ها اجازه میده بسته های مورد نیازشون رو خیلی راحت نصب و مدیریت کنن. با کمک pip، دیگه لازم نیست ساعت ها دنبال کتابخونه های مورد نیاز پروژه هاتون بگردید؛ فقط کافیه یه دستور ساده بزنید تا همه چی آماده بشه.
اما کاربرد pip فقط به نصب محدود نمیشه! تو ادامه، درباره چیزایی مثل آپدیت کردن بسته ها، حذفشون و مدیریت وابستگی ها حرف می زنیم. همچنین با روش استفاده از فایل requirements.txt
آشنا میشید که تو پروژه های بزرگ تر واقعاً به درد بخوره و کار رو راحت تر کنه.
این بخش یه جورایی مقدمه ایه برای اینکه بهتر با pip آشنا بشید و بدونید چطور باید باهاش کار کنید. بعداً جزئیات دقیق تر هر کاربرد اصلی pip رو بررسی می کنیم. پس اگه دوست دارید تو مدیریت پکیج های پایتون حرفه ای تر بشید، همراه ما باشید!
ابزار pip
توی سال 2008 معرفی شد تا جایگزین ابزارهای قدیمی تر مدیریت بسته در پایتون بشه. خیلی زود تبدیل شد به یکی از محبوب ترین و پرکاربردترین ابزارها بین برنامه نویسای پایتون. قبل از اینکه pip
بیاد وسط، ابزارهایی مثل easy_install
وجود داشتن که به خاطر محدودیت هاشون، نمی تونستن کاملاً جوابگوی نیاز کاربران باشن. با اومدن pip
، نصب و مدیریت بسته ها خیلی راحت تر و کارآمدتر شد.
نقش pip توی اکوسیستم پایتون واقعاً حیاتی هست. این ابزار کمک می کنه برنامه نویس ها خیلی راحت به مخزن PyPI (Python Package Index) دسترسی پیدا کنن و بسته های مختلف رو نصب کنن. این موضوع مخصوصاً تو پروژه های بزرگ که کلی کتابخانه لازم دارن، اهمیت بیشتری پیدا می کنه. با استفاده از pip
، توسعه دهنده ها می تونن وابستگی های پروژه شون رو به سادگی مدیریت کنن و جلوی دردسرهای ناشی از ناسازگاری نسخه ها رو بگیرن.
در طول سال ها، pip
با اضافه کردن امکانات جدید و بهتر کردن کارایی خودش، تونسته نیازهای متنوع کاربران رو پوشش بده. مثلاً قابلیت نصب بسته ها از فایل requirements.txt
یا مدیریت محیط های مجازی (virtual environments) از جمله این ویژگی ها هستن. تو ادامه، بیشتر درباره کاربردهای اصلی pip
و چگونگی استفاده ازش صحبت می کنیم.
ابزار pip یکی از مهم ترین و پرکاربردترین وسایل برای توسعه دهنده های پایتون (Python) به حساب میاد و دلایل زیادی وجود داره که چرا اینقدر محبوبه. اولین و شاید مهم ترینش همون سادگی و راحتی کار باهاشه؛ اینکه خیلی سریع و بی دردسر می تونید بسته ها (package) و کتابخونه های مورد نیازتون رو نصب و مدیریت کنید. کافیه یه دستور ساده بزنین تا همه چیز راه بیفته، اینطوری کلی تو زمان توسعه صرفه جویی میشه و آدم بیشتر می تونه روی کد زدن متمرکز باشه.
یه چیز دیگه هم هست که باید بهش اشاره کنم؛ pip کمک می کنه وابستگی های پروژه هاتون رو به راحت ترین شکل ممکن کنترل کنید. وقتی پروژه ای کلی کتابخونه مختلف لازم داره، دیگه نگران نصب یا حذف بسته ها نباشید چون pip این کار رو مثل آب خوردن انجام میده. تازه، با استفاده از فایل requirements.txt
، همه وابستگی ها تو یه جا جمع میشن و فقط با یه دستور ساده همه شون نصب میشن، خیلی راحت تر از اون چیزی که فکرش رو بکنید.
حالا بیاید یه نگاه بندازیم به مخزن PyPI (Python Package Index) که pip ازش پشتیبانی می کنه؛ اینجا یه دنیای بزرگ پر از بسته ها و کتابخونه های متنوع وجود داره که هر برنامه نویسی رو خوشحال می کنه. شما می تونید همیشه به جدیدترین و بهترین ابزارها دسترسی داشته باشید و پروژه هاتون رو با کیفیت بالا پیش ببرید. تو ادامه مطلب، بیشتر درباره کاربردهای اصلی pip و راه های استفاده از اون صحبت خواهیم کرد.
تو این قسمت از مقاله می خوایم یاد بدیم چطور ابزار pip رو روی سیستم عامل های مختلف نصب کنید. نصب pip کار خیلی ساده و سریعی هست که بهتون کمک می کنه به راحتی بسته های پایتون (Python) رو مدیریت کنید. البته، چون pip معمولا با نسخه های جدید پایتون همراهه، ولی گاهی لازمه خودش رو دستی نصب کنید یا نسخه به روزترش رو بگیرین.
در ادامه، روش های نصب pip روی سیستم عامل هایی مثل ویندوز، لینوکس و مک رو با هم بررسی می کنیم. همچنین نکات مهمی رو می گیم تا مطمئن بشید نصب pip درست انجام شده و نسخه ش رو هم چک کنید. اگه دنبال یادگیری نحوه نصب pip هستید، این بخش کمک می کنه تا با مراحل مختلف آشنا بشید و بعدش با خیال راحت از این ابزار مفید استفاده کنید.
پس همراه ما باشید تا مرحله به مرحله نصب pip روی سیستم عامل های مختلف رو مرور کنیم و راهنمایی های لازم برای شروع کار با این ابزار کاربردی رو ارائه بدیم.
نصب pip روی ویندوز کار چندان پیچیده ای نیست و می تونید تو چند تا مرحله ساده انجامش بدید. اینجا قدم به قدم روش نصب pip رو براتون توضیح می دم:
python --version
get-pip.py
توش ذخیره شده. بعد این دستور رو تایپ کنید:python get-pip.py
pip --version
اگر همه چی اوکی باشه، نسخه pip براتون نمایش داده میشه.
با همین چند مرحله ساده می تونید pip رو روی ویندوز راه بندازید بدون دردسر. اگه دوست داشتید، در ادامه می تونیم درباره نصب pip روی سیستم عامل های دیگه مثل لینوکس و مک هم صحبت کنیم.
نصب pip روی سیستم عامل لینوکس کار خیلی سختی نیست و معمولاً در عرض چند دقیقه انجام میشه. البته روش نصبش بستگی داره به توزیعی که استفاده می کنید؛ هر توزیع لینوکس یه راه مخصوص به خودش داره. اینجا میخوایم به صورت ساده و روان، چطوری pip رو روی چند تا از محبوب ترین توزیع ها نصب کنیم رو با هم مرور کنیم:
sudo apt update
sudo apt install python3-pip
sudo yum install python3-pip
sudo dnf install python3-pip
pip3 --version
با دنبال کردن این مراحل ساده، به راحتی می تونید pip رو روی هر نوع لینوکسی نصب کنید. الان که با نصب pip روی لینوکس آشنا شدید، بد نیست نگاهی هم بندازیم به چطور میشه اون رو روی سیستم عامل مک (macOS) راه اندازی کرد.
نصب pip روی سیستم عامل macOS کار خیلی پیچیده ای نیست و به راحتی می تونید انجامش بدید. اینجا مرحله به مرحله راهنمای نصب pip رو براتون آماده کردم:
python3 --version
brew install python
get-pip.py
رو دانلود کنید. توی ترمینال این دستور رو بزنید:curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python3 get-pip.py
pip3 --version
با انجام دادن این مراحل ساده، می تونید به راحتی pip رو روی مک خودتون داشته باشید. حالا که با راه های مختلف نصب pip تو سیستم عامل های مختلف آشنا شدید، تو ادامه مقاله درباره چک کردن نسخه و آپدیت کردن pip صحبت می کنیم.
یه کار خیلی مهم تو مدیریت بسته های پایتون (Python packages) اینه که نسخه فعلی pip رو چک کنیم و مطمئن بشیم که به روز هست. اینطوری می تونیم همیشه از جدیدترین امکانات و بهبودهایی که اضافه شده بهره ببریم. حالا چطور این کار رو انجام بدیم؟ با هم مرور می کنیم:
چطوری بفهمیم نسخه pip فعلیمون چنده؟ اول ترمینال یا Command Prompt (CMD) رو باز کنید و این دستور رو وارد کنید:
pip --version
این دستور، نسخه pip فعلی رو همراه با اطلاعات محل نصبش نشون میده. اگه چند نسخه پایتون روی سیستم دارید، شاید بهتر باشه از دستور pip3 --version
استفاده کنید:
pip3 --version
حالا اگه خواستیم pip رو آپدیت کنیم، چیکار کنیم؟ خیلی ساده ست! فقط کافیه این دستور رو توی ترمینال یا CMD بزنید:
pip install --upgrade pip
این دستور به طور خودکار pip رو به آخرین نسخه ای که توی مخزن PyPI (Python Package Index) هست، به روزرسانی می کنه. اگر شما از pip3
استفاده می کنید، همین دستور رو با pip3
اجرا کنید:
pip3 install --upgrade pip
بعد از اینکه این دستورات رو اجرا کردید، دوباره با pip --version
یا pip3 --version
بررسی کنید ببینید نسخه pip تون آپدیت شده یا نه. اینجوری همیشه مطمئنید که از آخرین قابلیت ها و رفع مشکلات امنیتی بهره می برید.
تو ادامه، قراره درباره کاربردهای اصلی pip و طرز استفاده درستش بیشتر صحبت کنیم تا بتونید تجربه بهتری تو مدیریت بسته های پایتون داشته باشید.
ابزار pip
یکی از اصلی ترین و پرکاربردترین ابزارها تو دنیای پایتون به حساب میاد که کلی کار مختلف انجام میده و خیلی به توسعه دهنده ها کمک می کنه تا بسته ها (packages) رو راحت تر مدیریت کنن. تو این قسمت از مقاله، قراره سراغ کاربردهای اصلی pip
بریم و ببینیم چطوری میشه باهاش بسته ها رو نصب کرد، آپدیت کرد و حتی پاکشون کرد.
یکی از مهم ترین کاری که pip
انجام میده، نصب بسته های پایتونه. با یه دستور ساده می تونید کتابخونه هایی که پروژه تون لازم داره رو نصب کنید. این قضیه مخصوصاً وقتی پروژه بزرگ باشه و چندتا کتابخونه بخواد، خیلی به درد می خوره. تازه فقط نصب نیست؛ pip
امکان آپدیت کردن بسته ها رو هم میده. یعنی همیشه می تونید مطمئن باشید که دارید از جدیدترین نسخه ها استفاده می کنید و باگ ها یا مشکلاتی که ممکنه نسخه های قدیمی داشته باشن، شما رو اذیت نمی کنن.
بعدش هم یاد می گیریم چطوری بسته ها رو با pip
حذف کنیم، چطور وابستگی ها (dependencies) رو مدیریت کنیم و چطوری از فایل requirements.txt
استفاده کنیم. این موارد نه تنها سرعت کارتون رو بیشتر می کنن بلکه باعث میشن پروژه های پایتونی تون مرتب تر باشن و احتمال خطاهای ناشی از تداخل نسخه ها کمتر بشه. پس با ما همراه باشید تا تک تک این کاربردها رو حسابی باز کنیم و بگیم چه جوری باید ازشون استفاده کرد.
نصب بسته ها با استفاده از pip یکی از کارهای پایه و خیلی ساده ایه که هر برنامه نویس پایتون باید بلد باشه. با کمک pip می تونید خیلی راحت و سریع کتابخونه های مورد نیاز پروژه هاتون رو نصب کنید. اینجا قدم به قدم توضیح می دیم چطوری یک بسته رو با pip نصب کنید:
pip install package_name
به جای package_name
، اسم بسته ای که می خواید نصبش کنید رو بنویسید. مثلا اگه می خواید کتابخانه NumPy رو نصب کنید، دستور زیر رو بزنید:
pip install numpy
pip show package_name
این دستور اطلاعات مربوط به بسته ای که نصب کردید رو بهتون نمایش می ده.
با طی کردن این مراحل، به راحتی می تونید هر بسته ای که نیاز دارید رو با کمک pip نصب کنید. تو ادامه مطلب هم نحوه به روزرسانی بسته ها با pip رو بررسی می کنیم تا همیشه بتونید از آخرین نسخه ها استفاده کنید.
به روزرسانی بسته ها با استفاده از pip
یکی از کارهای مهم تو مدیریت پروژه های پایتون (Python) به حساب میاد. با آپدیت کردن بسته ها، می تونید از جدیدترین امکانات، بهبودها و اصلاحات امنیتی بهره مند بشید. اینجا قراره بهتون نشون بدیم چطوری با دستور upgrade
تو pip بسته ها رو به روزرسانی کنید:
pip install --upgrade package_name
به جای package_name
اسم بسته ای که می خواید آپدیت کنید رو بنویسید. مثلا برای به روزرسانی کتابخانه معروف NumPy، این دستور رو اجرا کنید:
pip install --upgrade numpy
pip show package_name
این فرمان اطلاعات مربوط به نسخه جدید بسته نصب شده رو نمایش می ده.
با دنبال کردن همین چند قدم ساده، خیلی راحت می تونید هر بسته ای که لازم دارید رو با pip به روزرسانی کنید. این کار نه تنها باعث می شه پروژه هاتون امن تر و کاراتر باشن، بلکه مطمئن می شید همیشه از بهترین و تازه ترین ابزارها بهره می برید. حالا که بحث مدیریت بسته ها شد، تو ادامه قراره روش حذف بسته ها با pip رو هم یاد بگیریم تا کنترل کامل تری روی پروژه های خودتون داشته باشید.
پاک کردن بسته ها با استفاده از pip کار چندان پیچیده ای نیست و این امکان رو بهتون میده تا بسته های اضافی یا قدیمی که دیگه بهشون نیازی ندارید رو راحت از سیستم تون حذف کنید. این مسئله مخصوصاً وقتی اهمیت پیدا می کنه که پروژه هاتون بزرگ شده باشه و کلی بسته روی هم جمع شده باشه. تو ادامه، راهنمای کامل حذف یه پکیج با pip رو مرحله به مرحله می گیم:
pip uninstall package_name
به جای package_name
اسم پکیجی که می خواید پاک کنید رو وارد کنید. مثلاً برای حذف کتابخانه محبوب NumPy، این دستور رو بزنید:
pip uninstall numpy
y
(یعنی بله) رو تایپ کنید و Enter بزنید.pip show package_name
اگه بسته هنوز نصب بود، اطلاعاتش نشون داده می شه؛ ولی اگه دیگه اونجا نبود، پیام میاد که چنین بسته ای پیدا نشد.
با طی کردن این مراحل ساده، به راحتی می تونید هر پکیجی که لازم ندارید رو با pip حذف کنید. مدیریت درست بسته ها یکی از مهارت های کلیدی تو توسعه پایتون (Python) به حساب میاد و کمک می کنه پروژه هاتون مرتب تر باشن و مشکلات ناشی از تداخل نسخه ها کمتر بشه. تو ادامه قراره راجع به چگونگی مدیریت وابستگی ها (dependencies) و استفاده از فایل requirements.txt
صحبت کنیم.
مدیریت وابستگی ها یکی از بخش های خیلی مهم توی توسعه نرم افزار محسوب میشه، مخصوصاً وقتی پروژه تون کلی کتابخانه و بسته مختلف داره. ابزار pip
این امکان رو بهتون می ده که به راحتی وابستگی های پروژه تون رو کنترل کنید و جلوی دردسرهای ناشی از ناسازگاری نسخه ها رو بگیرید. یکی از روش های کارآمد برای این کار، استفاده از فایل requirements.txt
هست.
فایل requirements.txt
چیه؟ این فایل یه لیست متنی ساده است که توش اسم و نسخه بسته های مورد نیاز پروژه نوشته شده. با کمک این فایل، می تونید همه وابستگی هایی که برای اجرای پروژه لازمه رو به شکل مرتب مدیریت کنید. مثلاً اگه پروژه ای دارید که به چند تا کتابخانه خاص احتیاج داره، اسم اونها و نسخه هایی که می خواید استفاده کنید رو تو این فایل ثبت می کنید.
چطوری فایل requirements.txt
رو بسازیم و استفاده کنیم؟
requirements.txt
بسازید و اسم و نسخه بسته ها رو توش بنویسید. مثلاً:numpy==1.21.2 pandas==1.3.3 requests==2.26.0
pip install -r requirements.txt
با استفاده از فایل requirements.txt
، مدیریت وابستگی ها براتون خیلی ساده تر میشه و مطمئن می شید همه اعضای تیم یا هر کسی که پروژه شما رو اجرا می کنه، دقیقاً از همون نسخه های درست کتابخانه ها استفاده می کنه. در ادامه قراره چند تا دستور مهم دیگه pip
رو هم بررسی کنیم که کار باهاش راحت تر بشه.
ابزار pip
یه مجموعه دستورات خیلی کاربردی و قوی داره که به برنامه نویس های پایتون این امکان رو میده تا به راحتی بتونن بسته ها رو مدیریت کنن. تو این قسمت از مقاله، قراره نگاهی بندازیم به چندتا از مهم ترین و پرکاربردترین دستورهای pip
که هر برنامه نویسی باید بلد باشه. وقتی با این دستورات آشنا بشید، مدیریت پکیج های پایتون براتون خیلی ساده تر و روان تر میشه.
این دستورات شامل مواردی مثل نصب، حذف، آپدیت کردن بسته ها، دیدن لیست بسته های نصب شده و جستجو تو مخزن PyPI هستن. هر کدوم از این دستورات ویژگی های خاص خودشون رو دارن و کمک می کنن پروژه های پایتونی تون رو بهتر و دقیق تر مدیریت کنید. تازه، با یاد گرفتن این دستورها، می تونید وابستگی های پروژه رو راحت تر کنترل کنید و جلوی دردسرهای ناشی از تداخل نسخه ها رو بگیرید.
تو ادامه مطلب، تک تک این دستورها رو با جزئیات بررسی می کنیم. علاوه بر اون، چندتا نکته و ترفند هم برای استفاده بهتر از pip
میگیم که حسابی به دردتون میخوره. پس اگه دوست دارید تو مدیریت پکیج های پایتون حرفه ای تر بشید، با ما همراه باشید!
یکی از قابلیت های جالب و کاربردی pip اینه که می تونی بسته های نصب شده روی سیستم رو ببینی. این امکان بهت کمک می کنه خیلی سریع بفهمی چه بسته هایی نصب شدن و اطلاعات مربوط بهشون چیه. فقط کافیه از دستور list
تو pip استفاده کنی تا همه این اطلاعات رو راحت ببینی.
چطوری از دستور list استفاده کنیم؟ خیلی ساده ست؛ فقط ترمینال یا Command Prompt (CMD) رو باز کن و این دستور رو وارد کن:
pip list
با اجرای این دستور، یه فهرست کامل از همه بسته هایی که نصب کردی به همراه نسخه شون نمایش داده میشه. مثلا خروجی می تونه چیزی شبیه به این باشه:
Package Version
---------- -------
numpy 1.21.2
pandas 1.3.3
requests 2.26.0
یه نکته جالب دیگه هم اینکه می تونی با استفاده از گزینه --outdated
فقط اون بسته هایی که نسخه جدیدترشون موجوده رو ببینی:
pip list --outdated
اینطوری فقط بسته هایی که نیاز دارن آپدیت بشن نمایش داده میشن و کمک می کنه همیشه از آخرین نسخه ها بهره مند باشی.
با این دستورات، کنترل بیشتری روی بسته هایی که نصب کردی داری و هر موقع خواستی می تونی اون ها رو حذف یا آپدیت کنی. در ادامه، قراره درباره چگونگی جستجو کردن بسته ها تو مخزن PyPI صحبت کنیم تا راحت تر بتونی بسته های جدید و مورد نیازت رو پیدا کنی.
مخزن PyPI (Python Package Index) به عنوان منبع اصلی بسته های پایتون شناخته میشه و با استفاده از pip
می تونید خیلی راحت تو این مخزن جستجو کنید. این امکان بهتون کمک می کنه که بسته های جدید یا مورد نیاز پروژه تون رو پیدا کنید و از آخرین کتابخانه ها بهره ببرید. حالا بریم ببینیم چطور میشه تو مخزن PyPI دنبال بسته ها گشت:
استفاده از دستور search: برای اینکه یه بسته خاص رو پیدا کنید، کافیه ترمینال یا Command Prompt (CMD) رو باز کنید و این دستور رو وارد کنید:
pip search package_name
به جای package_name
اسم یا بخشی از اسم بسته ای که به دنبالش هستید رو تایپ کنید. مثلا اگه می خواید بسته هایی که شامل عبارت "requests" هستن رو پیدا کنید، باید این دستور رو بزنید:
pip search requests
بعد از اجرای این دستور، لیستی از بسته هایی که با عبارت جستجو شده مطابقت دارن نمایش داده میشه. هر آیتم معمولاً شامل اسم بسته، نسخه اون و یه توضیح کوتاه درباره کاربردش هست. این اطلاعات بهتون کمک می کنه بهترین بسته مناسب نیازتون رو انتخاب کنید.
نکته مهم: باید بدونید که به خاطر تغییرات جدید در سیاست های امنیتی PyPI، ممکنه استفاده از دستور search
محدود شده باشه یا دیگه کار نکنه. اگه اینجوری شد، بهترین راه اینه که مستقیم برید سراغ سایت رسمی PyPI و جستجوی خودتون رو اونجا انجام بدید.
با این روش ها می تونید خیلی راحت بسته های مورد نیازتون رو تو مخزن PyPI پیدا کنید و در پروژه های پایتون استفاده کنید. تو ادامه، قراره درباره تنظیمات پیش فرض مخزن تو pip صحبت کنیم تا بتونید مدیریت بهتری روی بسته ها داشته باشید.
یکی از قابلیت های جالب pip اینه که می تونی چندتا پکیج رو یه جا نصب کنی. اینطوری هم توی وقتت صرفه جویی میشه و هم راحت تر می تونی چندتا بسته رو همزمان به سیستم اضافه کنی. حالا بریم ببینیم چطور میشه این کار رو انجام داد:
چطوری چندتا پکیج رو با هم نصب کنیم؟ خیلی ساده ست! فقط کافیه اسم همه پکیج هایی که می خوای رو پشت سر هم توی یه دستور بنویسی. مثلاً فرض کن می خوای کتابخونه های NumPy
و Pandas
رو با هم نصب کنی، باید این دستور رو بزنی:
pip install numpy pandas
با این دستور، pip هر دو بسته رو به صورت همزمان دانلود و نصب می کنه. تازه اگه بخوای نسخه خاصی از هر بسته رو داشته باشی، اونم میشه مشخص کرد. مثلاً:
pip install numpy==1.21.2 pandas==1.3.3
نصب پکیج ها از طریق فایل requirements.txt: حالا فرض کن تعداد بسته هایی که می خوای نصب کنی خیلی زیاد باشه. تو همچین مواقعی بهترین کار اینه که یه فایل متنی به اسم requirements.txt
درست کنی که توش اسم و نسخه همه بسته ها نوشته شده باشه. بعد با یه دستور ساده همه شون رو نصب کنی:
pip install -r requirements.txt
این روش مخصوصاً وقتی پروژه هات بزرگن و کلی کتابخونه لازم داری، حسابی به کارت میاد.
با همین راه ها می تونی راحت چندتا پکیج رو با pip نصب کنی و کلی توی زمانت صرفه جویی کنی. راستی، بعداً درباره نحوه تنظیم مخزن پیش فرض pip هم صحبت می کنیم تا بتونی مدیریت بسته هات رو بهتر انجام بدی.
وقتی با pip کار می کنید، تنظیمات و پیکربندی های پیشرفته این امکان رو بهتون می ده که تجربه بهتری داشته باشید و کنترل بیشتری روی نحوه نصب و مدیریت بسته های پایتون (Python) خودتون داشته باشید. تو این بخش از مقاله، قراره به چندتا از مهم ترین تنظیمات و پیکربندی ها بپردازیم که می تونن کلی به بهینه تر شدن کار با pip کمک کنن.
یکی از قابلیت های خیلی کاربردی pip اینه که می تونید مخزن پیش فرض (repository) رو تغییر بدید. معمولاً pip بسته ها رو از مخزن PyPI (Python Package Index) دانلود می کنه، اما بعضی وقت ها ممکنه بخواید از یک مخزن داخلی یا سفارشی استفاده کنید؛ مثلاً تو شرکت ها یا سازمان هایی که لازمه بسته ها رو مدیریت کنن. با تغییر مخزن پیش فرض، کنترل بیشتری روی نسخه های بسته ها و امنیت پروژه هاتون خواهید داشت.
علاوه بر این، pip امکاناتی داره که بتونید گزینه های نصب مثل استفاده از پروکسی سرور، تنظیمات کش (cache) و مدیریت مجوزها رو پیکربندی کنید. این ویژگی ها کمک می کنن نصب بسته ها سریع تر و امن تر انجام بشه. تازه، می تونید فایل پیکربندی pip.conf
یا pip.ini
بسازید تا تنظیمات دلخواهتون ذخیره بشه و هر بار مجبور نباشید دوباره گزینه ها رو وارد کنید.
تو ادامه مطالب، جزئیات تغییر مخزن پیش فرض و سایر تنظیمات پیشرفته رو بررسی می کنیم تا بتونید تجربه کاربری خودتون با pip رو بهتر کنید. پس اگه دلتون می خواد از همه امکانات pip بهره ببرید، حتماً با ما همراه باشید!
وقتی که می خوایم مخزن پیش فرض (repository) توی pip رو عوض کنیم، یعنی می خوایم بسته های پایتون رو از یه مخزن داخلی یا اختصاصی نصب کنیم. این کار مخصوصاً تو شرکت ها و سازمان هایی که دوست دارن کنترل بیشتری روی بسته هاشون داشته باشن، خیلی به درد می خوره. حالا ببینیم چطوری میشه این مخزن پیش فرض رو تغییر داد:
چطور مخزن پیش فرض رو تغییر بدیم: برای این کار، باید سراغ فایل پیکربندی pip.conf
(روی لینوکس و macOS) یا pip.ini
(روی ویندوز) بریم. این فایل به pip میگه که از چه تنظیماتی استفاده کنه و هر بار که دستور pip رو اجرا می کنیم، اون تنظیمات اعمال بشه.
برای ساختن یا ویرایش این فایل، کافیه مراحل زیر رو دنبال کنید:
~/.config/pip/pip.conf
%APPDATA%\pip\pip.ini
[global]<br> index-url = https://your-internal-repository-url/simple
حالا هر موقع از pip استفاده کنید، به جای اینکه بسته ها رو از مخزن پیش فرض PyPI دانلود کنه، از همون مخزن جدیدی که معرفی کردید بسته ها دریافت میشه. این روش کمک می کنه تا کنترل بیشتری روی نسخه های بسته ها و امنیت پروژه ها داشته باشید.
با عوض کردن مخزن پیش فرض، راحت تر می تونید بسته هایی که تو سازمان خودتون ساختید یا بسته های داخلی دیگه ای که لازم دارید مدیریت کنید. در ادامه هم به بررسی تنظیمات پیشرفته تر pip می پردازیم تا تجربه استفاده شما بهتر بشه.
راه انداختن یه محیط مجازی (Virtual Environment) یکی از بهترین روش ها برای مدیریت بسته ها و وابستگی های پایتون تو پروژه های مختلفه. وقتی از محیط مجازی استفاده می کنید، هر پروژه به طور جداگانه از بقیه پروژه ها و بسته هایی که روی سیستم نصب کردید، کنترل میشه. اینطوری دیگه نسخه های مختلف بسته ها با هم قاطی نمی شن و دردسرهای ناشی از ناسازگاری ها به حداقل می رسه. حالا بریم ببینیم چطور با کمک pip یه محیط مجازی راه بندازیم:
نصب virtualenv: اول از همه باید مطمئن بشید بسته virtualenv
روی سیستمتون نصب شده. برای این کار ترمینال یا Command Prompt (CMD) رو باز کنید و این دستور رو وارد کنید:
pip install virtualenv
ایجاد محیط مجازی: بعد از اینکه virtualenv نصب شد، می تونید یه محیط مجازی جدید بسازید. برید به پوشه ای که می خواید محیط توش ساخته بشه و این دستور رو بزنید:
virtualenv myenv
اینجا myenv
اسم محیط مجازی شماست، هر اسمی دوست داشتید می تونید بذارید.
فعال کردن محیط مجازی: وقتی محیط ساخته شد، لازمه که فعالش کنید تا بتونید تو اون بسته ها رو نصب یا مدیریت کنید. برای فعال کردنش:
myenv\Scripts\activate
source myenv/bin/activate
بعد فعال شدن، اسم محیط مجازی کنار پرامپت نمایش داده میشه و هر بسته ای که نصب کنید فقط تو همین محیط وجود داره.
نصب بسته ها داخل محیط مجازی: حالا می تونید با pip هر کتابخونه ای که نیاز دارید نصب کنید. مثلا:
pip install numpy
خاموش کردن محیط مجازی: وقتی کارتون تموم شد، با دستور زیر می تونید محیط رو غیرفعال کنید:
deactivate
با همین روش ساده می تونید چند تا پروژه مختلف رو جدا از هم مدیریت کنید و خیالتون راحت باشه که بسته هاشون با هم قاطی نمیشن. تو ادامه مقاله هم به مشکلات رایج موقع استفاده از pip و راهکارهاشون اشاره خواهیم کرد.
وقتی وارد دنیای پایتون می شیم، چندتا ابزار مختلف برای مدیریت بسته ها (package management) وجود داره که هرکدوم ویژگی ها و مزایای خودشون رو دارن. تو این قسمت از مقاله، می خوایم دو تا از محبوب ترین ابزارهای مدیریت بسته پایتون یعنی pip و conda رو با هم مقایسه کنیم. این مقایسه کمک می کنه بهتر بفهمید هر کدوم چه قابلیت هایی دارن و بتونید تصمیم درستی برای انتخاب ابزار مناسب پروژه هاتون بگیرید.
pip ابزاریه که به عنوان گزینه پیش فرض تو پایتون استفاده می شه و به شما اجازه می ده بسته های موجود تو مخزن PyPI رو نصب و مدیریت کنید. یکی از مزیت های اصلی pip سادگی و کارایی بالاشه. با pip می تونید خیلی سریع بسته های مورد نیاز پروژه تون رو نصب کنید و مدیریت وابستگی ها (dependencies) رو به راحتی انجام بدید. علاوه بر این، pip امکان سازماندهی بسته ها با استفاده از فایل requirements.txt
رو فراهم می کنه که تو پروژه های بزرگ حسابی به درد بخوره.
از طرف دیگه، conda یه ابزار جامع تر حساب می شه که فقط محدود به مدیریت بسته های پایتون نیست، بلکه برای مدیریت محیط های توسعه (development environments) هم طراحی شده. conda اجازه می ده نه تنها بسته های پایتون بلکه بسته های زبان های دیگه مثل R و Ruby رو هم کنترل کنید. این قابلیت باعث شده conda گزینه مناسبی برای پروژه هایی باشه که چند زبان برنامه نویسی توشون استفاده می شه. همچنین، conda خودش وابستگی ها رو به شکل خودکار مدیریت می کنه و روند نصب بسته ها رو ساده تر می کنه.
تو ادامه، قراره دقیق تر به تفاوت ها و مزایای هر کدوم از این ابزارها بپردازیم. وقتی با ویژگی های منحصر به فرد pip و conda آشنا بشید، راحت تر می تونید بهترین انتخاب رو برای پروژه هاتون داشته باشید و از مزایای هر کدوم به بهترین شکل بهره ببرید.
تو دنیای پایتون، دو تا ابزار معروف برای مدیریت بسته ها داریم: pip و easy_install. هر دو به برنامه نویس ها کمک می کنن بسته های پایتون رو نصب و کنترل کنن، ولی خب تفاوت هایی هم دارن که بد نیست بهشون یه نگاه بندازیم.
سادگی و کارایی: یکی از بزرگ ترین برتری های pip نسبت به easy_install اینه که خیلی راحت تر و کاربرپسندتره. pip یه رابط کاربری ساده تر داره و دستوراتش هم واضح تره که باعث میشه نصب و مدیریت بسته ها خیلی راحت تر انجام بشه. مثلا، برای نصب یه بسته با pip کافیه از دستور زیر استفاده کنید:
pip install package_name
اما تو easy_install، دستورات کمی پیچیده تر هستن و امکانات کمتری هم ارائه می ده.
مدیریت وابستگی ها: pip خودش به صورت خودکار وابستگی های بسته ها رو تشخیص می ده و اون ها رو نصب می کنه. این ویژگی باعث میشه برنامه نویس ها کمتر با مشکلات ناسازگاری نسخه ها روبرو بشن. در مقابل، easy_install معمولاً تو مدیریت وابستگی ها دردسر بیشتری درست می کنه و ممکنه مجبور باشید بعضی وابستگی ها رو دستی نصب کنید.
پشتیبانی از مخزن PyPI (Python Package Index): pip مستقیم با مخزن PyPI ارتباط داره و این امکان رو به توسعه دهنده میده که خیلی راحت بسته های جدید رو جستجو و نصب کنه. البته easy_install هم از PyPI پشتیبانی می کنه، ولی امکانات جستجو و نصبش نسبت به pip محدودتره.
نتیجه گیری: هرچند easy_install قبلاً خیلی محبوب بود، اما با اومدن pip و پیشرفت های مداومش، الان pip به عنوان ابزار اصلی مدیریت بسته های پایتون شناخته میشه. اگه هنوز از easy_install استفاده می کنید، پیشنهاد می کنم سریع تر به pip کوچ کنید تا از مزیت های بیشترش بهره ببرید. در ادامه قراره یه مقایسه دیگه بین pip و conda داشته باشیم تا بتونید بهترین ابزار رو برای مدیریت بسته های پایتون انتخاب کنید.
تو این قسمت، یه مقایسه کامل و همه جانبه بین دو تا از ابزارهای محبوب مدیریت بسته تو دنیای پایتون یعنی pip و conda داریم. هر کدوم از این دو ابزار ویژگی ها و مزیت های خاص خودشونو دارن و انتخاب بینشون کاملاً بستگی داره به اینکه پروژه تون چه نیازی داره و محیط توسعه تون چطوره.
1. نوع بسته هایی که مدیریت می کنن: pip به طور اختصاصی برای مدیریت بسته های پایتون ساخته شده و فقط می تونه بسته هایی که تو مخزن PyPI (Python Package Index) هستن رو نصب کنه. اما conda یه ابزار جامع تره که نه فقط بسته های پایتون بلکه می تونه بسته های مربوط به زبان های دیگه مثل R، Ruby و غیره رو هم کنترل کنه. همین باعث میشه conda برای پروژه هایی که چند زبان برنامه نویسی توشون دخیل هستن، خیلی مناسب تر باشه.
2. مدیریت محیط های مجازی: conda به طور خاص برای این کار ساخته شده. با استفاده از conda می تونید چند تا محیط مختلف با نسخه های متفاوت پایتون و بسته ها بسازید که خیالتون راحت باشه نسخه ها با هم تداخل ندارن. البته pip هم می تونه تو محیط های مجازی ای که با ابزارهایی مثل virtualenv ایجاد شدن استفاده بشه، ولی خودش به تنهایی ابزار مدیریت محیط نیست.
3. نصب وابستگی ها: pip معمولاً وابستگی های هر بسته رو تشخیص میده و نصب می کنه، اما گاهی لازمه دستی هم وارد عمل بشید. conda این کار رو خیلی بهتر انجام میده؛ یعنی وابستگی ها رو خودش شناسایی و نصب می کنه و کم تر دردسر درست می کنه.
4. سرعت نصب: معمولاً conda سریع تر بسته ها رو نصب می کنه چون از باینری های آماده استفاده می کنه که لازم نیست کامپایل بشن. اما pip گاهی وقتا باید بسته ها رو کامپایل کنه که باعث میشه روند نصب طولانی تر بشه.
5. جامعه کاربری و پشتیبانی: هر دو ابزار جامعه بزرگی دارن، ولی چون pip ابزار پیش فرض پایتونه، بیشتر مورد توجه قرار گرفته و منابع آموزشی بیشتری براش موجوده. در عوض conda هم مستندات خوبی داره و توسط توزیع Anaconda حمایت میشه.
ویژگی | pip | conda |
---|---|---|
نوع بسته های مدیریت شده | بسته های پایتون (PyPI) | بسته های پایتون و زبان های دیگه |
مدیریت محیط | نیاز به ابزارهای جانبی مثل virtualenv | مدیریت محیط داخلی |
مدیریت وابستگی ها | شناسایی خودکار، ولی گاهی نصب دستی لازمه | شناسایی و نصب خودکار بدون دردسر |
سرعت نصب | معمولاً کندتر (نیاز به کامپایل) | معمولاً سریع تر (استفاده از باینری آماده) |
جامعه و پشتیبانی | بسیار بزرگ، مستندات فراوان | مستندات خوب، حمایت از Anaconda |
جمع بندی: واقعیتش انتخاب بین pip و conda کاملاً به نیازهای پروژه شما بستگی داره. اگه صرفاً با پروژه های پایتونی سر و کار دارید و مدیریت محیط پیچیده نمی خواید، pip گزینه مناسبیه. ولی اگه پروژه تون چند زبان برنامه نویسی داره یا لازم دارید محیط های مجازی متنوعی رو کنترل کنید، بهتره سراغ conda برید. راستی، بعداً قراره درباره مشکلات متداولی که موقع کار با pip پیش میاد صحبت کنیم تا تجربه کار کردن باهاش براتون راحت تر بشه.
کار کردن با pip معمولاً خیلی راحت و بدون دردسره، ولی خب بعضی وقتا ممکنه با یه سری مشکلات روبرو بشید. تو این بخش از مقاله، می خوایم به مشکلات متداولی که موقع استفاده از pip پیش میاد و راه حل هایی که براشون وجود داره بپردازیم. آشنا بودن با این مسائل و نحوه رفعشون قطعاً کمک می کنه تجربه بهتری تو مدیریت بسته های پایتون (Python) داشته باشید.
1. ارور “pip is not recognized”: یکی از مشکلاتی که خیلی ها باهاش مواجه میشن، وقتی هست که می خوان pip رو اجرا کنن ولی سیستم میگه "pip is not recognized as an internal or external command". دلیلش معمولاً اینه که مسیر نصب pip تو متغیر PATH سیستم درست تنظیم نشده. برای حلش کافیه مطمئن بشید مسیر نصب pip – که معمولاً تو پوشه Scripts تو محل نصب پایتونه – به PATH اضافه شده باشه.
2. مشکلات SSL: بعضی وقتا موقع نصب بسته ها با pip خطاهای مربوط به SSL پیش میاد. این مشکل معمولاً به خاطر نبود گواهی های SSL معتبر یا تنظیمات اشتباه سیستم اتفاق میفته. برای رفع این مورد، می تونید از گزینه --trusted-host
استفاده کنید تا pip رو مجبور کنید به مخزن مورد نظر اعتماد کنه:
pip install package_name --trusted-host pypi.org --trusted-host files.pythonhosted.org
3. عدم تطابق نسخه ها: گاهی پیش میاد که خطاهایی نشون داده میشه که میگه نسخه بسته ها با وابستگی هاشون هماهنگ نیستن. برای اینکه این مشکل رو برطرف کنید، می تونید از دستور pip install --upgrade
استفاده کنید و بسته ها رو آپدیت کنید یا تو فایل requirements.txt
نسخه های مشخصی رو تعیین کنید تا تداخل پیش نیاد.
4. مشکلات دسترسی: اگر موقع نصب بسته ها با ارورهای مربوط به دسترسی روبرو شدید، احتمالاً باید کاربر مدیر (Administrator) باشید. تو ویندوز، کافیه روی Command Prompt راست کلیک کنید و "Run as administrator" رو انتخاب کنید. تو لینوکس یا مک هم می تونید با sudo
دستور نصب رو اجرا کنید:
sudo pip install package_name
5. بسته های ناقص یا خراب: بعضی وقتا ممکنه موقع نصب بسته ها خطاهایی ببینید که نشون میده بسته ناقص یا خراب دانلود شده. بهترین راه حل اینه که اول اون بسته رو حذف کنید و بعد دوباره نصبش کنید:
pip uninstall package_name
pip install package_name
با اینکه این مشکلات رایج هستن، ولی وقتی روشون مسلط باشید خیلی راحت تر می تونید با pip کار کنید و از دردسرهای مدیریت بسته های پایتون دور بمونید. ادامه مقاله نکات مهم و کلیدی دیگه ای هم برای استفاده بهتر از pip داره که پیشنهاد می کنم حتماً بخونید.
خطای "pip is not recognized as an internal or external command" یکی از مشکلات متداول تو ویندوزه که ممکنه به دلایل مختلف پیش بیاد. این پیام معمولاً یعنی سیستم شما نمی تونه دستور pip رو پیدا کنه چون مسیرش به متغیر PATH اضافه نشده. حالا بیاین با هم مرحله به مرحله ببینیم چطور این مشکل رو حل کنیم:
python --version
اگه نسخه Python نشون داده شد که عالیه، برید سراغ مرحله بعد. ولی اگه هیچ چیزی نیومد یا خطا دیدید، باید برید سراغ سایت رسمی Python و نسخه مناسب رو دانلود و نصب کنید.
python -m pip --version
اگر pip نصب باشه، نسخه ش نمایش داده میشه. اگه با خطا مواجه شدید، باید pip رو نصب کنید.
C:\Users\YourUsername\AppData\Local\Programs\Python\PythonXX\Scripts\
هست. فقط یادتون باشه به جای YourUsername
و PythonXX
نام کاربری خودتون و نسخه واقعی Python رو قرار بدید.pip --version
اگه همه چیز درست پیش رفته باشه، باید نسخه pip نمایش داده بشه بدون هیچ خطایی.
با انجام این مراحل ساده، مشکل پیدا نکردن دستور pip تو ویندوز برطرف میشه و می تونید راحت تر بسته های پایتون (Python packages) تون رو مدیریت کنید. البته اگه هنوز گیر دارید، شاید بد نباشه Python و pip رو یک بار دیگه پاک کرده و دوباره نصب کنید یا از منابع دیگه کمک بگیرید.
خطاهای مربوط به SSL یکی از مشکلاتی هستن که ممکنه موقع استفاده از pip
برای نصب بسته ها بهشون بر بخورید. معمولاً این خطاها به خاطر نبود گواهی های SSL معتبر، تنظیمات نادرست یا حتی مشکلات اتصال اینترنت پیش میان. تو ادامه، چند روش ساده و کاربردی برای شناسایی و رفع این مشکلات رو با هم مرور می کنیم:
استفاده از گزینه --trusted-host: وقتی با ارور SSL مواجه شدید، می تونید با استفاده از گزینه --trusted-host
به pip
بگید که به اون مخزن خاص اعتماد کنه. مثلاً فرض کنید می خواید بسته ای نصب کنید اما خطای SSL می گیرید، این دستور رو امتحان کنید:
pip install package_name --trusted-host pypi.org --trusted-host files.pythonhosted.org
با این کار، pip
بدون اینکه گواهی SSL رو چک کنه، بسته ها رو دانلود می کنه.
آپدیت کردن pip: گاهی مشکل SSL به خاطر قدیمی بودن نسخه pip
هست. بهترین راه حل اینه که اول pip
رو آپدیت کنید. برای این کار دستور زیر رو تو ترمینال یا Command Prompt وارد کنید:
python -m pip install --upgrade pip
بعد از آپدیت کردن، دوباره سعی کنید بسته مورد نظرتون رو نصب کنید.
بررسی تنظیمات پروکسی: اگه تو شبکه ای هستید که از پروکسی استفاده می کنید، امکان داره تنظیمات اشتباه باعث ارورهای SSL بشه. برای تنظیم پروکسی در pip
می تونید از گزینه --proxy
بهره ببرید:
pip install package_name --proxy http://username:password@proxy_address:port
خیلی دقت کنید اطلاعات پروکسی رو درست وارد کرده باشید.
نصب دستی گواهی های SSL: بعضی وقت ها لازمه که گواهی های SSL رو خودتون دستی نصب کنید. می تونید گواهی های معتبر CA (Certificate Authority) رو دانلود و روی سیستم تون نصب کنید. بعدش دوباره امتحان کنید بسته ها رو نصب کنید.
استفاده از مخازن جایگزین: اگه هنوز مشکل SSL پابرجاست و نمی تونید حلش کنید، یه راه دیگه تغییر آدرس مخزن با گزینه --index-url
هست:
pip install package_name --index-url=https://alternative-repository-url/simple
اینطوری می تونید از یه مخزن دیگه استفاده کنید و احتمالاً مشکل حل میشه.
با رعایت این نکات ساده، می تونید خطاهای مربوط به SSL هنگام کار با pip
رو راحت تر شناسایی و برطرف کنید و بدون دردسر بسته های پایتون (Python) خودتون رو نصب نمایید. البته اگه باز هم مشکلی بود، شاید بد نباشه یک نگاهی به اتصال اینترنت یا تنظیمات امنیتی سیستم بندازید.
وقتی داری با pip بسته ای رو نصب یا حذف می کنی، ممکنه به خطاهای مختلفی بر بخوری که کار رو حسابی به هم بریزن. اینجا قراره چندتا از شایع ترین خطاها رو با هم بررسی کنیم و ببینیم چطوری میشه رفعشون کرد:
خطای "Permission denied": این خطا معمولاً وقتی پیش میاد که دسترسی کافی برای نصب یا حذف بسته نداری. برای حلش، بهتره با دسترسی مدیر (Administrator) وارد بشی. تو ویندوز، کافیه روی Command Prompt راست کلیک کنی و گزینه Run as administrator
رو بزنی. روی لینوکس و macOS هم می تونی از دستور sudo
استفاده کنی تا اجازه لازم رو بگیری، مثلاً:
sudo pip install package_name
خطای "Could not find a version that satisfies the requirement": وقتی این ارور میاد یعنی pip نمی تونه نسخه ای از بسته ای که می خوای پیدا کنه. اول مطمئن شو اسم بسته رو درست وارد کردی. بعد می تونی از این دستور استفاده کنی تا ببینی چه نسخه هایی موجوده:
pip search package_name
اگر دنبال نسخه خاصی هستی، اون رو تو دستور نصب مشخص کن.
خطای "No matching distribution found": این خطا زمانی پیش میاد که pip نتونه توزیع مناسبی از بسته رو پیدا کنه. معمولاً دلیلش اینه که اون بسته تو مخزن PyPI موجود نیست یا نسخه پایتون (Python) شما با اون سازگار نیست. حتماً چک کن که بسته برای نسخه پایتون شما در دسترس باشه.
خطای "Invalid requirement": اگه موقع نصب یه بسته با این پیام مواجه شدی، احتمالاً اسم بسته یا فرمتش اشتباه نوشته شده. حواست باشه نام و نسخه بسته دقیق و بدون کاراکترهای اضافی باشه.
مشکلات وابستگی (Dependency issues): بعضی وقتا موقع نصب یا حذف بسته ها ممکنه به مشکلات وابستگی برخورد کنی. برای رفع این موضوع، می تونی از دستور زیر استفاده کنی تا همه وابستگی های لازم آپدیت بشن:
pip install --upgrade package_name
پاک کردن کش pip: گاهی کش (cache) pip باعث بروز مشکلات عجیب میشه. اگه فکر می کنی مشکل از کش هست، با این دستور کش رو پاک کن:
pip cache purge
با دونستن این نکات و روش های رفع خطاهای رایج، می تونی راحت تر مشکلات نصب یا حذف بسته ها با pip رو پشت سر بذاری و تجربه بهتری داشته باشی. بعداً هم چندتا نکته مهم برای استفاده بهتر از pip برات توضیح خواهیم داد.
استفاده درست و حسابی از pip
و رعایت نکات امنیتی تو مدیریت بسته های پایتون، کلی بهتون کمک می کنه پروژه هاتون رو بهتر کنترل کنید و از دردسرهای امنیتی جلوگیری کنید. تو این بخش، می خوایم چندتا نکته مهم درباره استفاده بهتر از pip و بالا بردن امنیت پروژه های پایتونی رو با هم مرور کنیم.
استفاده از محیط مجازی (Virtual Environment): همیشه پیشنهاد میشه برای هر پروژه یه محیط مجازی جدا بسازید. اینطوری می تونید بسته ها و وابستگی های هر پروژه رو جداگانه مدیریت کنید و به دردسرهای مربوط به تداخل نسخه ها دچار نشید. با ابزارهایی مثل virtualenv
یا conda
میشه خیلی راحت این محیط ها رو راه انداخت.
بروزرسانی مرتب: حواستون باشه همیشه pip
و بسته هاتون رو آپدیت نگه دارید. با دستور pip install --upgrade package_name
می تونید بسته ها رو به آخرین نسخه شون برسونید. این کار باعث میشه از امکانات جدید و مهم تر از همه، رفع مشکلات امنیتی بهره ببرید.
استفاده از فایل requirements.txt: برای اینکه وابستگی ها و نسخه های بسته ها رو کنترل کنید، بهتره از فایل requirements.txt
استفاده کنید. این فایل به شما کمک می کنه همه بسته های مورد نیاز پروژه رو یکجا داشته باشید و با یه دستور ساده نصبشون کنید. تازه، همکارانتون هم راحت تر متوجه وابستگی های پروژه میشن.
بررسی امنیت بسته ها: قبل از نصب هر بسته ای حتماً یه سرچی بزنید ببینید بسته از کجا داره میاد و مطمئن بشید منبعش معتبر هست. برای شناسایی مشکلات امنیتی داخل بسته هایی که نصب کردید، ابزارهایی مثل pip-audit
خیلی به دردتون میخوره.
استفاده از مخازن امن: اگر تو یک شرکت یا سازمان کار می کنید، شاید بخواهید از مخازن داخلی یا خصوصی استفاده کنید تا کنترل بیشتری روی نسخه ها داشته باشید و امنیت پروژه ها رو بالاتر ببرید.
مستندسازی: فراموش نکنید که مستندسازی کامل و درست پروژه خیلی مهمه. این کار نه تنها مدیریت پروژه رو براتون راحت تر می کنه، بلکه بقیه توسعه دهنده ها هم راحت تر می فهمن پروژه چطوری کار می کنه و اگر لازم بود تغییر بدن.
آموزش تیم: مطمئن بشید همه اعضای تیم با اصول امنیتی و بهترین روش های استفاده از pip آشنا هستن. برگزاری ورکشاپ یا دوره های آموزشی خیلی کمک می کنه سطح دانش تیم بالا بره.
با رعایت این نکات ساده ولی کلیدی، تجربه کار با pip براتون راحت تر و مطمئن تر میشه و پروژه های پایتونی خودتون رو بهتر مدیریت خواهید کرد. تو ادامه هم قراره چندتا کتابخانه محبوب که با pip قابل نصب هستند رو معرفی کنیم تا بهترین ابزارها رو برای توسعه نرم افزار انتخاب کنید.
مدیریت وابستگی ها و جلوگیری از به هم ریختگی نسخه ها یکی از دغدغه های اصلی توی دنیای توسعه نرم افزاره. خوشبختانه با ابزار pip
میشه به شکل مؤثری این مشکلات رو کنترل کرد و پروژه های پایتونی رو بهتر مدیریت کرد. تو ادامه، چند تا روش کاربردی برای اینکه بتونید وابستگی ها رو درست اداره کنید و جلوی تداخل نسخه ها رو بگیرید، با کمک pip معرفی می کنم:
requirements.txt
داشته باشید که همه وابستگی ها رو توش جمع کنید. اینجوری راحت تر میشه بسته ها رو نصب کرد و مطمئن شد همه تو تیم دارن از نسخه های یکسان استفاده می کنن. برای ساختن این فایل کافی هست از دستور زیر استفاده کنید:pip freeze > requirements.txtکه لیست همه بسته های نصب شده به همراه نسخه شون رو داخل این فایل ذخیره می کنه.
requirements.txt
بهتره حتماً نسخه دقیق بسته ها رو بنویسید. مثلاً:numpy==1.21.2این کار باعث میشه مشکلات ناشی از تغییرات ناگهانی نسخه ها پیش نیاد و پروژه پایدارتر بمونه.
pandas>=1.3,<1.4
Pipenv
و Poetry
امکانات بیشتری نسبت به pip معمولی ارائه میدن. این برنامه ها کمک می کنن وابستگی ها و محیط مجازی پروژه رو راحت تر کنترل کنید و دردسرهای مربوط به تداخل نسخه ها رو کاهش بدید.با رعایت این نکات ساده اما مهم، می تونید مدیریت بهتری روی وابستگی های پروژه هاتون داشته باشید و جلوی دردسرهای احتمالی ناشی از تداخل نسخه ها رو بگیرید. در ادامه، قراره چندتا کتابخانه محبوب که با pip قابل نصب هستن رو معرفی کنیم تا بتونید بهترین ابزارها رو برای توسعه نرم افزارتون انتخاب کنید.
وقتی با pip بسته ها رو از PyPI (Python Package Index) نصب می کنید، این کار خیلی به توسعه پروژه های پایتون کمک می کنه. ولی خب، باید حواس تون باشه چون ممکنه مشکلات امنیتی هم پیش بیاد. تو اینجا چند تا نکته مهم رو می گم که چطور موقع نصب بسته ها از PyPI با pip امنیت تون رو بیشتر کنید:
بررسی اصالت بسته ها: قبل از اینکه هر بسته ای رو نصب کنید، حتماً سراغ سایت رسمی ش یا مخزن GitHubش برید و مستندات و نظرات کاربران رو یه نگاهی بندازید. همچنین خوبه بدونید آخرین بار کی آپدیت شده، چون بسته های قدیمی معمولاً آسیب پذیری بیشتری دارن.
استفاده از نسخه های مشخص: بهتره تو فایل requirements.txt
نسخه دقیق بسته ها رو بنویسید. اینطوری از دردسر تغییرات ناخواسته تو نسخه ها در امان می مونید. مثلاً می تونید بنویسید:
numpy==1.21.2<br>requests>=2.25,<3.0
نصب فقط از منابع معتبر: مطمئن بشید بسته ها رو فقط از منابع قابل اعتماد می گیرید. گزینه --trusted-host
تو pip کمک می کنه که فقط به مخازن خاص اعتماد کنید:
pip install package_name --trusted-host pypi.org --trusted-host files.pythonhosted.org
استفاده از ابزارهای امنیتی: ابزارهایی مثل pip-audit
و safety
خیلی به دردتون می خورن تا آسیب پذیری های موجود در بسته هایی که نصب کردید رو پیدا کنید. این ابزارها وابستگی های پروژه رو بررسی می کنن و با پایگاه داده های آسیب پذیری مقایسه می کنن تا نقاط ضعف رو نشون بدن.
محدود کردن دسترسی: اگه تو محیط سازمانی کار می کنید، حتماً دسترسی نصب بسته ها رو کنترل کنید و فقط افراد مجاز بتونن تغییر ایجاد کنن. این کار با سیاست های امنیتی درست و نظارت روی فعالیت ها ممکنه.
نظارت بر فعالیت های نصب: همیشه بهتره فعالیت های نصب و حذف بسته ها ثبت و کنترل بشن تا هر رفتار مشکوکی سریع شناسایی بشه و بتونید به موقع واکنش نشون بدید.
آموزش تیم: اعضای تیم تون رو با روش های امن کار کردن آشنا کنید و تشویق شون کنید قبل از نصب هر بسته ای اول اعتبارش رو چک کنن.
با رعایت این نکات ساده ولی کلیدی، امنیت پروژه پایتون تون به شکل قابل توجهی بالاتر میره و خیالتون راحت تر میشه که مشکلات ناشی از نصب بسته ها کمتر پیش بیاد. حالا اگه دوست دارید، تو ادامه درباره کتابخانه های محبوبی که با pip قابل نصب هستن حرف می زنیم تا بتونید بهترین ابزارها رو برای برنامه نویسی خودتون انتخاب کنید.
تو دنیای پایتون، کلی کتابخونه هست که می تونن حسابی به توسعه دهنده ها کمک کنن تا پروژه هاشون رو راحت تر پیش ببرن. این کتابخونه ها شامل ابزارهای مختلفی برای زمینه هایی مثل علم داده (Data Science)، یادگیری ماشین (Machine Learning)، ساخت وب و خیلی حوزه های دیگه هستن. اینجا چند تا از محبوب ترین کتابخونه هایی که می تونید با pip
نصب کنید رو معرفی می کنم:
NumPy: یکی از پایه ای ترین کتابخونه ها برای انجام محاسبات عددی تو پایتونه. NumPy این امکان رو می ده که با آرایه های چند بعدی کار کنید و عملیات ریاضی مختلفی روی اون ها انجام بدید. برای نصبش کافیه این دستور رو تو ترمینال بزنید:
pip install numpy
Pandas: این کتابخونه مخصوص تجزیه و تحلیل داده ها طراحی شده و ابزارهای قوی ای برای کار با داده های جدولی مثل DataFrame داره. Pandas بهتون کمک می کنه داده هاتون رو بارگذاری، پردازش و تحلیل کنید. برای نصبش، از این دستور استفاده کنید:
pip install pandas
Matplotlib: یه کتابخونه قدرتمند برای کشیدن نمودار و نمایش بصری داده هاست. با Matplotlib می تونید انواع نمودارها رو بسازید و اطلاعاتتون رو به شکل دیدنی نشون بدید. برای نصبش کافیه این دستور رو وارد کنید:
pip install matplotlib
Scikit-learn: یکی از محبوب ترین ابزارهای یادگیری ماشین تو پایتونه که مجموعه ای از الگوریتم های مختلف رو ارائه می ده تا مدل های پیش بینی بسازید. اگه خواستید سریع نصبش کنید، این دستور رو بزنید:
pip install scikit-learn
Flask: یه فریمورک سبک و ساده برای ساخت برنامه های وب که اجازه می ده خیلی سریع پروژه هاتون رو راه بندازید. Flask خیلی انعطاف پذیره و می تونید بر اساس نیاز خودتون اون رو تنظیم کنید. برای نصب Flask این دستور رو اجرا کنید:
pip install Flask
Django: یکی از معروف ترین فریمورک های وب در پایتونه که امکانات زیادی برای توسعه برنامه های پیچیده وب فراهم کرده. با Django می تونید پروژه هاتون رو سریع تر بسازید و راحت تر مدیریت کنید. اگه خواستید نصبش کنید، از این دستور استفاده کنید:
pip install django
Requests: یه کتابخونه خیلی کاربردی برای ارسال درخواست های HTTP که به شما اجازه می ده راحت با APIها ارتباط برقرار کنید و داده ها رو بگیرید یا بفرستید. نصب Requests هم با یه دستور ساده انجام می شه:
pip install requests
با کمک این کتابخونه ها، می تونید پروژه های پایتون خودتون رو توسعه بدید و از امکانات متنوع هر کدوم بهره مند بشید. تو ادامه مقاله، نکات مهمی درباره pip و مدیریت بسته ها (Package Management) هم بررسی می کنیم که بد نیست بدونید.
نصب کتابخانه های محبوب مثل NumPy، Pandas و Requests با استفاده از pip کار خیلی ساده و سریعی هست که بهتون اجازه میده به راحتی از قابلیت های این کتابخونه ها تو پروژه های پایتون (Python) خودتون استفاده کنید. حالا می خوام قدم به قدم طریقه نصب هر کدوم رو بهتون نشون بدم:
نصب NumPy: این کتابخانه یکی از پایه ای ترین ها برای انجام محاسبات عددی تو پایتونه. برای نصبش کافیه ترمینال یا Command Prompt (CMD) رو باز کنید و این دستور رو وارد کنید:
pip install numpy
وقتی نصب تموم شد، می تونید با دستور import numpy as np
تو کدتون ازش استفاده کنید.
نصب Pandas: Pandas یه کتابخونه فوق العاده برای تحلیل داده هاست. برای نصبش هم مثل بالا این دستور رو بزنید:
pip install pandas
بعد از نصب، با کد import pandas as pd
راحت می تونید بهش دسترسی پیدا کنید.
نصب Requests: Requests یکی از کاربردی ترین کتابخانه ها برای فرستادن درخواست های HTTP به حساب میاد. برای نصبش باید این دستور رو اجرا کنید:
pip install requests
پس از نصب، با import requests
تو برنامه تون می تونید ازش بهره ببرید.
نصب چند تا بسته همزمان: اگه بخواید چندتا کتابخونه رو یکجا نصب کنید، کافیه اسم همه شون رو تو یه دستور بنویسید. مثلاً برای نصب همزمان NumPy، Pandas و Requests اینجوری عمل کنید:
pip install numpy pandas requests
چک کردن وضعیت نصب بسته ها: وقتی کار نصب تموم شد، می تونید ببینید همه چیز درست انجام شده یا نه. برای این کار دستور زیر رو وارد کنید:
pip list
این دستور یه لیست کامل از بسته های نصب شده بهمراه نسخه شون نشون میده.
استفاده از فایل requirements.txt: اگه چندتا بسته دارید که معمولا تو پروژه های مختلف نیاز دارید، بهتره اسمشون رو تو یه فایل requirements.txt
بنویسید و بعد با یه فرمان ساده همه شون رو یکجا نصب کنید. برای ساخت این فایل کافیه نام و نسخه بسته ها رو داخلش بنویسید و بعد این دستور رو اجرا کنید:
pip install -r requirements.txt
با رعایت این مراحل، می تونید خیلی راحت کتابخانه های پرکاربرد مثل NumPy، Pandas و Requests رو با pip نصب کرده و از قابلیت های شون تو پروژه های پایتون خود بهره ببرید. در ادامه قراره چند نکته پایانی درباره pip و مدیریت بسته ها هم بررسی کنیم که بد نیست بدونید.
مدیریت بسته ها یکی از بخش های خیلی مهم تو توسعه نرم افزار با پایتون به حساب میاد و ابزار pip
هم جزو اصلی ترین ابزارهای این حوزه شناخته شده. با توجه به اینکه استفاده از پایتون داره روز به روز تو زمینه های مختلف بیشتر میشه، طبیعیه که آینده pip و مدیریت بسته ها هم تحت تأثیر تغییرات و پیشرفت های جدید قرار بگیره. تو این قسمت، نگاهی می اندازیم به تغییراتی که ممکنه در آینده برای pip و مدیریت بسته های پایتون رخ بده.
1. ارتقای امنیت: با زیاد شدن نگرانی ها درباره امنیت نرم افزارها، انتظار میره که pip بیشتر روی این موضوع تمرکز کنه. این یعنی بررسی دقیق تر بسته ها برای پیدا کردن نقاط ضعف امنیتی و ارائه راه حل هایی برای نصب بسته های مطمئن تر. همچنین، احتمالاً امکانات جدیدی برای احراز هویت کاربران و کنترل دسترسی ها اضافه میشه.
2. بهینه تر کردن مدیریت وابستگی ها: یکی از دردسرهای بزرگ تو مدیریت بسته ها، همین وابستگی ها و تداخل نسخه ها هست. در آینده ممکنه pip قابلیت های پیشرفته تری داشته باشه که خودش وابستگی ها رو بهتر مدیریت کنه و مشکلات مربوط به تعارض نسخه ها رو حل کنه. مثلاً استفاده از الگوریتم های هوشمندتر برای شناسایی و نصب نیازمندی ها.
3. ادغام با ابزارهای دیگه: انتظار میره pip بیشتر با ابزارهایی مثل Poetry
و Pipenv
هماهنگ بشه تا تجربه کاربری یکدست تر و راحت تری فراهم کنه. این ادغام کمک می کنه تا برنامه نویس ها بهتر بتونن محیط های مجازی (virtual environments) و وابستگی هاشون رو مدیریت کنن.
4. پشتیبانی بهتر از سیستم های جدید: با توجه به رشد استفاده از پایتون تو حوزه هایی مثل علم داده (Data Science)، یادگیری ماشین (Machine Learning) و اینترنت اشیاء (IoT)، احتمالا pip بهتر از قبل از سیستم ها و محیط های تازه پشتیبانی خواهد کرد. مثلاً نصب بسته ها روی دستگاه ها و سیستم عامل های مختلف بهینه تر انجام میشه.
5. افزایش مستندات و منابع آموزشی: جامعه پایتون روز به روز بزرگ تر میشه و طبیعتا مستندات pip و منابع آموزشی مرتبط باهاش هم باید بیشتر بشه. این یعنی وبینارها، دوره های آنلاین، مستندات تعاملی و چیزایی از این دست که کمک میکنه برنامه نویس ها بهتر با pip آشنا بشن.
6. قابلیت های پیشرفته تر: امکاناتی مثل نصب همزمان چند بسته، مدیریت بهتر کش (cache) و افزایش سرعت نصب هم جزو تغییراتی هستن که احتمالاً به زودی اضافه میشن. این ویژگی ها باعث میشن تجربه کاربری خیلی بهتر و سریع تر باشه.
در نهایت، آینده pip و مدیریت بسته های پایتون واقعاً امیدوارکننده است. با توجه به نیازهای روزافزون توسعه دهندگان، انتظار میره این ابزار همیشه در حال پیشرفت باشه. اگر برنامه نویس ها از همین حالا با این تغییرات آشنا بشن، راحت تر میتونن از امکانات جدید بهره ببرن و کارشون رو سریع تر انجام بدن.
همون طور که دیدیم، ابزار pip تو مدیریت بسته های پایتون (Python) و راحت تر کردن فرآیند توسعه نرم افزار نقش خیلی مهمی داره که همه بهش واقفن. تو این مطلب، به کاربردها، روش نصب و مدیریت بسته ها با pip پرداختیم و نکات کلیدی برای استفاده بهتر از این ابزار رو با هم مرور کردیم. همچنین مشکلات معمول و راه حل هایی که می تونن تجربه کاربری شما رو بهتر کنن، گفتیم.
این اطلاعات برای هر برنامه نویس پایتون حسابی کاربردیه، چون با کمک pip میشه پروژه ها رو به شکلی مؤثر مدیریت کرد و جلوی دردسرهای ناشی از وابستگی ها و نسخه های ناسازگار رو گرفت. وقتی با قابلیت های مختلف pip آشنا بشید و بدونید چطور بهینه ازش استفاده کنید، مطمئناً سرعت و کیفیت کارتون تو توسعه نرم افزار بیشتر میشه.
راستی، اگه هنوز دست به کار نشدی، همین الان شروع کن! کتابخونه های معروف مثل NumPy
، Pandas
و Requests
رو نصب کن و امکاناتشون رو تجربه کن. همچنین پیشنهاد می کنم محیط های مجازی بسازی تا کنترل بهتری روی وابستگی ها داشته باشی. برای اطلاعات بیشتر درباره pip و سایر ابزارهای پایتون، حتماً سری به بقیه مطالب سایت ما بزن و نظراتت رو با ما در میون بذار. با همدیگه می تونیم دنیای برنامه نویسی پایتون رو بهتر بشناسیم!
بنیانگذار توسینسو و برنامه نویس و توسعه دهنده ارشد وب
حسین احمدی ، بنیانگذار TOSINSO ، توسعه دهنده وب و برنامه نویس ، بیش از 12 سال سابقه فعالیت حرفه ای در سطح کلان ، مشاور ، مدیر پروژه و مدرس نهادهای مالی و اعتباری ، تخصص در پلتفرم دات نت و زبان سی شارپ ، طراحی و توسعه وب ، امنیت نرم افزار ، تحلیل سیستم های اطلاعاتی و داده کاوی ...
زمان پاسخ گویی روز های شنبه الی چهارشنبه ساعت 9 الی 18
فقط به موضوعات مربوط به محصولات آموزشی و فروش پاسخ داده می شود