پایتون به عنوان یک زبان برنامهنویسی قدرتمند و انعطافپذیر، برای تسهیل کار برنامهنویسان و افزایش بهرهوری، از چیزی به نام “پکیج” استفاده میکند. پکیجها، مجموعهای از فایلهای کد هستند که قابلیتهای مختلفی را در اختیار برنامهنویسان قرار میدهند، بدون اینکه نیازی به نوشتن کد از ابتدا داشته باشند. میتوان این پکیجها را به ابزارهای کمکی در جعبهابزار پایتون تشبیه کرد که در اینترنت بهوفور یافت میشوند و بهراحتی قابل دسترسی هستند.
pip در پایتون
برای مدیریت و استفاده از این پکیجها، به یک ابزار مدیریت بستهها یا “پکیج منیجر” نیاز داریم. در پایتون، این وظیفه بر عهده pip (مخفف Package Installer for Python) است. با استفاده از pip، میتوانید پکیجهای مورد نیاز خود را از اینترنت دانلود، نصب، بهروزرسانی یا حذف کنید. این ابزار به شما اجازه میدهد تا با چند دستور ساده، امکانات گستردهای را به پروژههای خود اضافه کنید.
توجه: اگر نسخه 3.4 به بالا از پایتون را نصب دارید، به طور پیش فرض PIP برای شما نصب شده و آماده استفاده است.
این پکیج منیجر از ورژن 3.4 برای پایتون 3 و از ورژن 2.7.9 برای پایتون 2 قابل استفاده است.
PyPI و نقش آن در پایتون
PyPI (مخفف Python Package Index) بزرگترین مخزن آنلاین پکیجهای پایتون است و بیش از 300,000 پکیج مختلف را در خود جای داده است. PyPI مانند یک کتابخانه آنلاین از پکیجهای پایتون عمل میکند که برنامهنویسان میتوانند با استفاده از pip به آنها دسترسی پیدا کنند. هر پکیجی که در PyPI منتشر میشود، میتواند توسط هر کسی در سراسر جهان استفاده شود. این مخزن به شما اجازه میدهد تا بهراحتی پکیجهای مورد نیاز خود را پیدا کرده و آنها را در پروژههای خود استفاده کنید.
تفاوت pip، pip3 و pip2
حتما میدانید که در پایتون، دو نسخه اصلی وجود دارد: پایتون 2 و پایتون 3. هر دو نسخه دارای پکیج منیجرهای مخصوص به خود هستند. در سیستمهایی که هر دو نسخه پایتون نصب شدهاند، ممکن است pip به نسخه 2 یا 3 اشاره داشته باشد. بنابراین برای اطمینان از نصب پکیجها برای نسخه مورد نظر، از دستورات “pip2” یا “pip3” استفاده میشود.
بطور پیشفرض با نصب پایتونهای نسخه جدید، pip نیز همراه آن نصب میشود و برای حصول اطمینان کافی است فرمانهای زیر را در ترمینال ران کنید:
pip --version pip3 --version
با تایپ دستور بالا ورژن نصب شده را اینطور نمایش میدهد:
pip 18.1 from C:\Python37\lib\site-packages\pip (python 3.7)
- pip: بهطور پیشفرض به pip نسخهای از پایتون که در سیستم نصب است، اشاره میکند. این ممکن است نسخه 2 یا 3 باشد.
- pip2: برای نصب پکیجها در پایتون 2 استفاده میشود.
- pip3: برای نصب پکیجها در پایتون 3 استفاده میشود.
با استفاده از این دستورات، میتوانید پکیجها را در نسخه مورد نظر خود نصب کنید.
آشنایی با پکیج (Package)
یک Package شامل تمام فایلهایی است که برای یک ماژول نیاز دارید. ماژولها کتابخانههای کد پایتون هستند که میتوانید از آنها در پروژه خود استفاده کنید.
نصب pip در پایتون
اگر چه اکثر نسخههای جدید پایتون بهطور پیشفرض pip را نصب دارند، اما ممکن است در برخی شرایط نیاز به نصب دستی pip باشد. برای بررسی اینکه آیا pip روی سیستم شما نصب است یا خیر، میتوانید دستور زیر را در ترمینال وارد کنید:
pip --version
این دستور به شما نسخه نصب شده pip را نمایش میدهد. اگر pip نصب نشده باشد، میتوانید آن را بهصورت دستی از سایت رسمی PyPI دانلود و نصب کنید. با دنبال کردن راهنمای نصب در این سایت، بهراحتی میتوانید pip را به محیط پایتون خود اضافه کنید و از امکانات آن بهرهمند شوید. سایت pypi برای جست جوی بستهها و نصب PIP است که نمای سایت آن به شکل زیر است:
آموزش نصب پکیج با pip
نصب پکیجهای مختلف در پایتون با pip بسیار ساده است. به عنوان مثال، اگر میخواهید پکیجی مانند “requests” را نصب کنید، کافی است از دستور زیر در cmd استفاده کنید:
pip install requests
این دستور pip را هدایت میکند تا به مخزن PyPI مراجعه کرده و آخرین نسخه از پکیج “requests” را دانلود و نصب کند.
به یاد داشته باشید که در دستور بالا، بهجای requests میتوانید نام هر پکیج دیگهای را که قصد دارید نصب کنید تایپ کنید:
pip install package_name
یکی دیگر از ویژگیهای مهم pip این است که میتوانید نسخههای خاصی از پکیجها را با استفاده از دستور == نصب کنید؛ به عنوان مثال، دستور زیر نسخه خاصی از پکیج را نصب خواهد کرد:
pip install requests==2.25.1
همچنین، میتوانید از شروط منطقی برای نصب نسخهها استفاده کنید. مثلاً اگر میخواهید یک نسخه خاص یا بالاتر را نصب کنید، میتوانید از >= استفاده کنید:
pip install requests>=2.0
این ویژگیها به شما امکان میدهد که کنترل بیشتری روی نسخههای پکیجهای خود داشته باشید.
به همین راحتی شما اولین Package خودتان را بارگیری و نصب کردید.
دستورات پرکاربرد pip
حذف پکیجها در PIP
اگر نیاز دارید پکیجی را از پروژه خود حذف کنید، pip ابزار مناسب برای این کار است. با استفاده از دستور “pip uninstall package_name”، میتوانید هر پکیجی را از سیستم خود حذف کنید. به عنوان مثال، برای حذف پکیج “requests”، از دستور زیر استفاده میکنیم:
pip uninstall requests
pip پس از تأیید شما، پکیج مربوطه و تمامی وابستگیهای آن را از سیستم حذف خواهد کرد.
:Uninstalling requests-02.1 :Would remove c:\users\Your Name\appdata\local\programs\python\python36-32\lib\site-packages\requests-0.2-py3.6.egg-info c:\users\Your Name\appdata\local\programs\python\python36-32\lib\site-packages\requests\* Proceed (y/n)?
در صورتی که دکمه y را از صفحه کلید فشار دهید، بسته حذف خواهد شد.
بیشتر بخوانید: آموزش اتصال به دیتابیس MySQL از طریق پایتون
پیدا کردن لیست پکیجهای نصب شده در PIP
برای مشاهده لیست تمامی پکیجهایی که تاکنون در سیستم شما نصب شدهاند، باید از دستور list یا freeze استفاده کنیم:
pip list
نتیجه:
C:\>pip list Package Version ----------- ------------ absl-py 0.9.0 astor 0.7.1 babel 2.7.0
برای مشاهده لیست پکیجهای نصبشده، میتوان از دستور freeze هم به شکل زیر استفاده کرد:
pip freeze
همچنین اگر نیاز دارید که لیستی از تمامی پکیجهای نصبشده خود را به صورت یک فایل متنی ذخیره کنید، این دستور را وارد کنید:
pip freeze > requirements.txt
این دستور فایلی با نام “requirements.txt” ایجاد کرده و تمامی پکیجهای نصب شده شما را فهرست خواهد کرد. این ویژگی به شما کمک میکند تا پکیجهای مورد نیاز پروژه خود را بهسادگی با دیگران به اشتراک بگذارید.
نصب دستهجمعی پکیجها به کمک PIP
برای نصب تمام پکیجهای موجود در فایل requirements.txt، کافی است دستور زیر را اجرا کنید:
pip install -r requirements.txt
نصب پکیجها برای یک کاربر خاص در pip
ممکن است در یک پروژه، سطح دسترسی شما محدود بوده یا اصلا به اکانت ادمین اصلی دسترسی نداشته باشید. در این شرایط میتوانید از کدی که پایین قرار گرفته برای نصب پکیج روی اکانت و یوزر خودتان استفاده کنید:
pip install --user package_name
بیشتر بخوانید: آموزش اتصال پایتون به دیتابیس PostgreSQL
جمعبندی
استفاده از pip به عنوان یک ابزار مدیریت بسته در پایتون، برنامهنویسان را قادر میسازد تا بهراحتی از پکیجها و کتابخانههای موجود در PyPI بهرهمند شوند. این ابزار بهطور خودکار وابستگیهای پروژه را مدیریت میکند و فرآیند نصب، بهروزرسانی، و حذف پکیجها را سادهتر میسازد. درک و استفاده مؤثر از pip برای هر برنامهنویس پایتون ضروری است، چرا که این ابزار علاوه بر صرفهجویی در زمان، باعث افزایش بهرهوری و کیفیت پروژههای نرمافزاری میشود. با پیروی از نکات و راهنماییهای ارائهشده در این مقاله، میتوانید با اطمینان بیشتری از pip در پروژههای خود استفاده کنید و از جامعه گسترده پکیجهای پایتون بهرهمند شوید.
اگر به دنبال خرید هاست برای اپلیکیشنها و سایتهای توسعهیافته با زبان Python هستید، هاست پایتون پیشنهاد ایران سرور شما است. در این هاست، سرورها متناسب با زبان پایتون کانفیگ شده و برنامههای لازم از قبل روی آن نصب شده است.
سوالات متداولی که شما می پرسید؟
- آیا pip برای نصب پکیجها فقط از PyPI استفاده میکند؟
خیر، pip میتواند از منابع مختلفی پکیجها را نصب کند. علاوه بر PyPI، میتوانید پکیجها را از فایلهای محلی، URLها و حتی ریپازیتوریهای GitHub نصب کنید.
- چگونه میتوانم pip را آپدیت کنم؟
برای بهروزرسانی pip به آخرین نسخه، کافی است از دستور زیر استفاده کنید:
python -m pip install --upgrade pip
- چگونه میتوانم پکیجهایی که نیاز به بهروزرسانی دارند را شناسایی کنم؟
برای دیدن پکیجهایی که نیاز به بهروزرسانی دارند، از دستور زیر استفاده کنید:
pip list --outdated
- چگونه میتوانم پکیجهای وابسته به یک پکیج خاص را مشاهده کنم؟
برای مشاهده وابستگیهای یک پکیج، میتوانید از دستور pip show استفاده کنید. بهعنوان مثال، برای دیدن وابستگیهای پکیج requests:
pip show requests
این دستور اطلاعات کاملی از پکیج، شامل وابستگیها، نسخه نصبشده و مسیر نصب را نمایش میدهد.
- اگر یک پکیج نصب نشود، چگونه میتوانم مشکل را عیبیابی کنم؟
برخی مشکلات نصب پکیج ممکن است به دلیل نسخههای ناسازگار، مشکلات اتصال به اینترنت یا وابستگیهای پیچیده باشند. برای عیبیابی، میتوانید از flagهای –verbose یا –log استفاده کنید تا اطلاعات دقیقتری از فرآیند نصب و خطاها بدست آورید:
pip install package_name --verbose
- آیا pip میتواند پکیجها را بهصورت آفلاین نصب کند؟
بله، میتوانید پکیجها را بهصورت آفلاین نصب کنید. ابتدا پکیج مورد نظر را دانلود کرده و سپس با استفاده از دستور زیر، آن را بهصورت محلی نصب کنید:
pip install package_name.whl
منابع