منبع اصلی نوشتار زیر در این لینک قرار دارد

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

در این مطلب توضیح می دهیم که چطور می توان نسخه کتابخانه/ماژول های نصب شده روی پایتون را پیدا و بررسی کرد.

پیدا کردن نسخه کتابخانه نصب شده

چه راه هایی در دسترس است؟

  • گرفتن نسخه با نوشتن یک اسکریپت پایتون و استفاده از فیلد __version__
  • دستور pip در ترمینال/خط فرمان سیستم عامل (terminal/command line)
    • لیست کتابخانه های نصب شده: pip list
    • (جایگزین) لیست کتابخانه های نصب شده: pip freeze
    • دیدن جزئیات یک کتابخانه نصب شده: pip show [package_name]
  • بررسی لیست کتابخانه های نصب شده با conda (در صورت نصب Anaconda) : conda list

گرفتن نسخه با یک اسکریپت پایتون و استفاده از خصوصیت __version__

دا نوشتن یک اسکریپت پایتون، می توان با وارد کردن کتابخانه مورد نظر و چاپ کردن مقدار فیلد __version__ می توان نسخه آن کتابخانه را پیدا کرد. قطعه کد زیر نسخه کتابخانه pandas را نمایش می دهد.

import pandas as pd

print(pd.__version__)
# 0.22.0

داشتن فیلد __version__ برای کتابخانه ها، توسط PEP (Python Enhancement Proposals) پیشنهاد شده و بسیار از بسته های کتابخانه ها این فیلد را فراهم می کنند.

با این حال، وجود این فیلد اجباری نیست و باید انتظار داشت که کتابخانه هایی هستند که از این طریق نمی توان به نسخه نصب شده آن ها پی برد. همچنین، در ماژول استاندارد از پیش نصب شده، این فیلد را نداریم (مثل کتابخانه های math و os).

بنابراین بهتر است که روش های زیر را هم در نظر داشته باشید.

 

استفاده از دستور pip در ترمینال/خط فرمان: pip list و pip freeze و pip show

اگر از سیستم مدیریت بسته های پایتون موسوم به pip استفاده می کنید، از این طریق هم می توان اطلاعات بسته های نصب شده را مشاهده کنید.

به دو نکته دقت کنید؛ اول این که این دستورات اسکریپت پایتون نیستند و باید در ترمینال/خط فرمان اجرا شوند؛ و دوم، در بعضی سیستم عامل ها یا برخی محیط های برنامه نویسی، با وجود نصب بودن سیستم مدیریت بسته ها، دستور pip شناخته شده نیست و باید به جای آن از pip3 استفاده کرد.

لیست کتابخانه های نصب شده با pip list

دستور pip list یک لیست از نام و نسخه بسته های کتابخانه ای نصب شده روی پایتون را نمایش می دهد.

$ pip list
Package            Version
------------------ ---------
absl-py            0.1.10
agate              1.6.0
agate-dbf          0.2.0
agate-excel        0.2.1
agate-sql          0.5.2
appnope            0.1.0

آپشن های زیر را در فراخوانی این دستور می توانید استفاده کنید:

  • -o, –outdated
    فقط لیست بسته های قدیمی
  • -u, –uptodate
    فقط لیست بسته های به روز

 

لیست کتابخانه های نصب شده با pip freeze

دستور pip freeze هم نام و نسخه کتابخانه های نصب شده را نمایش می دهد. تفاوت خروجی این دستور فرمت و شکل نمایش جزئیات در آن است که با فرمت freeze خروجی را ارائه می کند.

$ pip freeze
absl-py==0.1.10
agate==1.6.0
agate-dbf==0.2.0
agate-excel==0.2.1
agate-sql==0.5.2
appnope==0.1.0

البته این دستور در خروجی خود، کتابخانه های زیر را لیست نمی کند مگر اینه در فراخوانی آن آپشن all-- را استفاده کنید.

  • pip
  • setuptools
  • distribute
  • wheel

 

لیست کتابخانه های نصب شده با pip show

این دستور را باید با نام بسته کتابخانه ای که می خواهید جزئیات کامل آن را بگیرید باید فراخوانی کنید؛ یعنی به این صورت: pip show <package-name>

علاوه بر شماره نسخه، مشخصات جزیی دیگری مانند دیگر کتابخانه های استفاده شده در آن (dependency packages) و صفحه وب مرتبط را نمایش می دهد.

$ pip show pandas
Name: pandas
Version: 0.22.0
Summary: Powerful data structures for data analysis, time series,and statistics
Home-page: http://pandas.pydata.org
Author: The PyData Development Team
Author-email: [email protected]
License: BSD
Location: /usr/local/lib/python3.6/site-packages
Requires: pytz, numpy, python-dateutil

 

لیست کتابخانه های نصب شده با conda

اگر روی سیستم خود Anaconda را نصب کرده اید و محیط توسعه خود را با نسخه پایتون آن تنظیم کرده اید، پس می توانید در ترمینال/خط فرمان از دستور conda list برای گرفتن اطلاعات ماژول کتابخانه های نصب شده استفاده کنید.

مثالی از خروجی اجرای این دستور روی سیستم خودم که سیستم عامل آن ویندوز۱۰ است، را می توانید مشاهده کنید:

# packages in environment at C:\Users\Hamed\Anaconda3:
#
# Name                    Version                   Build  Channel
_ipyw_jlab_nb_ext_conf    0.1.0                    py37_0
_pytorch_select           0.1                       cpu_0
_tflow_select             2.3.0                       mkl
absl-py                   0.11.0           py37haa95532_0
aiohttp                   3.6.3            py37he774522_0
anaconda-client           1.7.2                    py37_0
anaconda-navigator        1.10.0                   py37_0
argon2-cffi               20.1.0           py37he774522_1
astor                     0.8.1                    py37_0
async-timeout             3.0.1                    py37_0
async_generator           1.10             py37h28b3542_0
attrs                     20.3.0             pyhd3eb1b0_0
.
.
.

 

 

این مطلب، ترجمه و تلخیصی از این منبع است:

Check the version of Python package / library

نوشته بررسی نسخه کتابخانه های نصب شده روی پایتون اولین بار در اوپن مایند. پدیدار شد.