در این آموزش، شما یاد خواهید گرفت که چگونه تمام بسته های پایتون نصب شده در محیط خود را، چه در حال استفاده از آن هستید، فهرست کنید. pip
، conda
یا pipenv
سیستم های مدیریت بسته برای پایتون
این مقاله را برای علاقه مندان به یادگیری نحوه استفاده از pip برای نصب و مدیریت بسته های پایتون دنبال کنید. برای کسانی که علاقه مند به نحوه استفاده از خط فرمان هستند.
چیت شیت در مورد نحوه فهرست کردن بسته های نصب شده در پایتون
مدیر بسته | فرمان به لیست بسته نصب شده |
---|---|
پیپ | $ pip list |
آناکوندا | $ conda list |
پیپنف | $ pipenv lock -r |
کنسول پایتون | >>> import pkg_resources یا >>> help("modules") |
نحوه لیست کردن بسته های پایتون نصب شده با Pip
لیست بسته های پایتون نصب شده (pip list
)
برای مشاهده تمام بسته های نصب شده در محیط پایتون، از pip list
فرمان
$ pip list
Package Version
------------------------ ------------
advertools 0.13.2
pandas 2.0.1
pip 23.2.1
...
لیست بسته های پایتون نصب شده (pip freeze
)
لیست کردن بسته های نصب شده بدون گنجاندن ابزارهای مدیریت بسته مانند pip
و setuptools
با استفاده از pip freeze
فرمان
$ pip freeze
خروجی بسته های نصب شده را نشان می دهد که ابزار مدیریت بسته نیستند.
advertools==0.13.2
pandas==2.0.1
تفاوت بین لیست پیپ و فریز پیپ
تفاوت اصلی بین pip list
و pip freeze
آن است pip freeze
شامل بسته های مورد استفاده برای مدیریت بسته نمی شود، مانند pip
و setuptools
.
به عنوان مثال، در اینجا خروجی های pip list
و pip freeze
برای همان محیط پایتون
لیست پیپ
Package Version
------------------------ ------------
advertools 0.13.2
pandas 2.0.1
pip 23.2.1
...
فریز پیپ
advertools==0.13.2
pandas==2.0.1
با این حال، میتوانید از پرچم ثابت پیپ برای نمایش تمام نسخهها از جمله مدیران بستهها استفاده کنید.
$ pip freeze --all
advertools==0.13.2
pandas==2.0.1
pip=23.2.1
تفاوت بزرگ دیگر این است که از pip freeze می توان برای ایجاد یک فایل requires.txt استفاده کرد.
$ pip freeze > requirements.txt
$ pip install -r requirements.txt
در اینجا اسناد رسمی برای هر دو دستور آمده است:
فرمت خروجی را انتخاب کنید (pip list --format
)
برای انتخاب فرمت خروجی از --format
پرچم با pip list
فرمان
نحوه نمایش خروجی لیست پیپ در ستون ها
$ pip list --format columns
نحوه نمایش خروجی لیست پیپ در قالب JSON
$ pip list --format json
نحوه نمایش خروجی لیست پیپ در قالب پیپ فریز
$ pip list --format freeze
بسته های به روز لیست پیپ (--uptodate
)
برای فهرست کردن فقط بستههای بهروز پایتون، از pip list -u
یا --uptodate
پرچم های فرمان
$ pip list -u
$ pip list --uptodate
پیپ لیست بسته های قدیمی (--outdated
)
برای فهرست کردن فقط بسته های قدیمی پایتون، از لیست پیپ استفاده کنید --outdated
یا -o
پرچم های فرمان
$ pip list -o
$ pip list --outdated
توجه داشته باشید که نمی توانید از --outdated
پرچم همراه با قالب ثابت.
ERROR: List format 'freeze' cannot be used with the --outdated option.
بسته های Pip List که توسط سایر بسته ها مورد نیاز نیست (--not-required
)
برای فهرست کردن فقط بستههای پایتون که مورد نیاز سایر بستهها نیستند، از pip list --not-required
پرچم های فرمان
$ pip list --not-required
را --not-required
flag برای دانستن اینکه آیا حذف نصب یک بسته بدون شکستن وابستگی های بسته های دیگر بی خطر است مفید است.
نحوه لیست کردن بسته های پایتون نصب شده بدون پیپ
این امکان وجود دارد که شما از آن استفاده نکنید pip
مدیر بسته پایتون در پروژه شما. برای مثال می توانید از Anaconda یا Pipenv استفاده کنید.
نحوه لیست کردن بسته های پایتون نصب شده با کنسول
برای لیست کردن تمام بسته های نصب شده با استفاده از pip
از کنسول Python Interpreter، وارد کنید pkg_resources
کتابخانه
import pkg_resources
packages = pkg_resources.working_set
packages_list = ["%s==%s" % (i.key, i.version) for i in packages]
print(packages_list)
برای لیست کردن تمام بسته های نصب شده بدون pip
از کنسول Python Interpreter استفاده کنید help("modules")
تابع. مراقب باشید که این عملکرد ممکن است زمان زیادی طول بکشد و همچنین در برخی موارد خطر حلقه های بی نهایت را به همراه دارد.
نحوه لیست کردن بسته های پایتون نصب شده با Conda
برای لیست کردن تمام بسته های نصب شده با استفاده از Anaconda، از conda list
دستور در Anaconda Navigator.
$ conda list
نحوه لیست کردن بسته های پایتون نصب شده با Pipenv
لیست کردن تمام بسته های پایتون نصب شده، از جمله تمام وابستگی ها، در یک pipenv
محیط، از دستور pipenv lock -r استفاده کرد.
$ pipenv lock -r
استراتژیست سئو در Tripadvisor، Seek سابق (ملبورن، استرالیا). متخصص در سئو فنی. در تلاش برای سئوی برنامهریزی شده برای سازمانهای بزرگ از طریق استفاده از پایتون، R و یادگیری ماشین.