نحوه مشاهده کتابخانه های نصب شده در پایتون

فهرست مطالب این نوشته
Toggleهزاران کتابخانه کاربردی پایتون، آن را به محبوبترین زبان برنامهنویسی دنیا تبدیل کردهاند. برنامهنویسان در طول پروژههای خود بارها نیاز پیدا میکنند که لیست کتابخانه های نصب شده را بررسی کنند؛ چه برای دیباگ کردن، چه برای مدیریت وابستگیها و چه برای مستندسازی پروژه. اگر شما هم به دنبال روشهای مختلف مشاهده کتابخانه های نصب شده در پایتون هستید، تا انتهای این مطلب همراهمان باشید.

چرا باید لیست کتابخانه های نصب شده را بدانیم؟
قبل از اینکه سراغ روشهای مشاهده کتابخانه های نصب شده در پایتون برویم، بیایید ببینیم چرا این موضوع اهمیت دارد:
- مدیریت وابستگیها – در پروژههای بزرگ برخی پکیجها به نسخههای خاصی از کتابخانه های دیگر وابستهاند
- نصب دوباره در سیستم دیگر – برای انتقال پروژه به کامپیوتر دیگر، نیاز دارید بدانید چه کتابخانههایی استفاده شدهاند
- دیباگ و رفع خطاها – گاهی به دلیل نسخههای ناسازگار، برنامهها به درستی اجرا نمیشوند
- مستندسازی پروژه – داشتن لیست کامل کتابخانهها، توسعه و نگهداری نرمافزار را سادهتر میکند
گاهی اوقات توسعهدهندگان برای بررسی کاربرد کتابخانه های پایتون و نسخههایشان باید لیستی از تمامی کتابخانهها مشاهده کنند؛ اما چگونه؟
اکنون سراغ روشهای مختلف مشاهده کتابخانه های نصب شده در پایتون میرویم.
استفاده از pip list برای مشاهده کتابخانه های نصب شده
پس از نصب کتابخانه در پایتون میتوانید از pip list که یکی از سادهترین روشها است، برای مشاهده کتابخانهها همراه با نسخهشان استفاده کنید.
دستور پایهای که باید استفاده کنید:
- pip list
خروجی نمونه:
Package Version
————- ———
numpy 1.21.5
pandas 1.3.4
requests 2.26.0
اگر بخواهید این لیست را در یک فایل متنی ذخیره کنید، میتوانید از دستور زیر استفاده کنید:
pip list > installed_packages.txt
با این کار یک فایل متنی حاوی لیست کتابخانه های نصب شده در پایتون ایجاد میشود.
استفاده از pip freeze برای مشاهده کتابخانه های نصب شده
دستور pip freeze مشابه pip list است، اما خروجی آن برای ایجاد فایل requirements.txt بسیار مناسبتر است. برای استفاده از این دستور باید کد : pip freeze را تایپ کنید.
خروجی:
numpy==1.21.5
pandas==1.3.4
requests==2.26.0
برای ذخیره لیست بهعنوان یک فایل وابستگی، از این دستور استفاده کنید:
pip freeze > requirements.txt
حالا هر کسی که این فایل را داشته باشد، میتواند کتابخانه های پروژه شما را نصب کند:
pip install -r requirements.txt
استفاده از ماژول pkg_resources در پایتون
اگر بخواهید از طریق کدنویسی درون یک اسکریپت، لیست کتابخانه های نصب شده در پایتون را دریافت کنید، میتوانید از pkg_resources استفاده کنید.
مثل:
import pkg_resources
installed_packages = pkg_resources.working_set
for package in installed_packages:
print(f”{package.key}=={package.version}”)
خروجی:
numpy==1.21.5
pandas==1.3.4
requests==2.26.0
استفاده از pipdeptree (نمایش وابستگیها بهصورت درختی)
گاهی اوقات لازم است علاوه بر مشاهده کتابخانه های نصب شده، وابستگیهای هر پکیج را هم بررسی کنیم. اینجاست که ابزار pipdeptree به کار میآید.
برای نصب pipdeptree دستور زیر را تایپ کنید:
pip install pipdeptree
برای مشاهده ساختار درختی وابستگیها کد زیر را وارد کنید:
pipdeptree
خروجی:
numpy==1.21.5
pandas==1.3.4
└── numpy [required: >=1.21.5, installed: 1.21.5]
استفاده از pipenv برای محیطهای مجازی
اگر از pipenv برای مدیریت محیطهای مجازی استفاده میکنید، میتوانید از دستورات زیر برای مشاهده کتابخانه های نصب شده در پایتون بهره ببرید.
فعالسازی محیط مجازی:
pipenv shell
لیست پکیجهای نصبشده:
pipenv lock –requirements
مشاهده لیست پکیجها در Jupyter Notebook
اگر در Jupyter Notebook کار میکنید، به راحتی میتوانید لیست پکیجها را مشاهده کنید.
دستور در سلول Jupyter:
!pip list
خروجی: مشابه pip list در ترمینال.
مشاهده کتابخانه های نصب شده در Conda
اگر از Anaconda استفاده میکنید، به جای pip باید از conda list استفاده کنید.
دستور پایه:
conda list
خروجی:
numpy 1.21.5
pandas 1.3.4
scipy 1.7.3
مشاهده کتابخانهها با ActiveState Platform
ActiveState Platform برای مدیریت پکیجهای پایتون استفاده میشود. با اجرای دستور state packages، لیست کامل کتابخانههای نصبشده را همراه با نسخههای آنها مشاهده کنید.
یکی از ویژگیهای مهم ActiveState این است که علاوه بر نمایش پکیجها، وابستگیهای آنها و حتی کتابخانههای سیستمی را نیز نشان میدهد. این قابلیت به شما کمک میکند تا وابستگیهای پروژه را بهتر مدیریت کرده و از مشکلات احتمالی ناسازگاری نسخهها جلوگیری کنید.
سخن پایانی
پس از بررسی روشهای مختلف مشاهده کتابخانه های نصب شده در پایتون، متوجه تفاوتهای ظریفی بین این روشها میشویم. یک سری مانند pip list و pip freeze برای بررسی سریع لیست پکیجها مفید هستند، در حالی که ابزارهایی مانند pipdeptree وابستگیها را بهصورت درختی نمایش میدهند.
اگر در محیطهای مجازی مانند pipenv یا conda کار میکنید، روشهای مخصوصی برای مشاهده کتابخانه های نصب شده در پایتون در دسترس است.
اگر میخواهید اطلاعات بهروز و کاربردی درباره نحوه استفاده از کتابخانه های پایتون و به طور کلی سرفصلهای مبتدی تا پیشرفته این زبان برنامهنویسی را یاد بگیرید، میتوانید در دورههای ما در آکادمی چابک شرکت کنید. برای دریافت اطلاعات بیشتر همین الان با ما تماس بگیرید.
سوالات متداول (FAQ)
۱. تفاوت pip list و pip freeze چیست؟
- pip list: تمام پکیجهای نصب شده (حتی آنهایی که از PyPI نیستند) را نمایش میدهد.
- pip freeze: فقط پکیجهایی که با pip نصب شدهاند را با فرمت requirements.txt نمایش میدهد.
۲. چگونه پکیجهای محلی و گلوبال را تشخیص دهیم؟
پکیجهای گلوبال را با pip list و پکیجهای محلی (User-specific) را با pip list –user میتوان مشاهده کرد.
منابع:
دیدگاهتان را بنویسید