Pythonのパッケージ(ライブラリ)のバージョンを確認
Pythonのスクリプトで使用されているパッケージ(ライブラリ)やモジュールのバージョン、および、環境にインストールされているパッケージのバージョンを確認する方法を説明する。
- スクリプトで確認、表示:
__version__属性
pip
コマンドで確認- インストール済パッケージの一覧表示:
pip list
- インストール済パッケージの一覧表示:
pip freeze
- インストール済パッケージの個別詳細表示:
pip show
- インストール済パッケージの一覧表示:
conda
コマンドで確認:conda list
Python本体のバージョンを確認したい場合は以下の記事を参照。
スクリプトで確認、表示: __version__
属性
Pythonのスクリプト内で使用されているパッケージのバージョンを確認、表示するには、__version__
属性を取得する。
pandasの例。
import pandas as pd
print(pd.__version__)
# 0.22.0
__version__
属性はPEPで推奨されており、多くのパッケージおよびモジュールで設定されている。
有名どころのパッケージではほぼ設定されているが、あくまでも推奨なので設定されていない場合もある。
また、__version__
属性のほかに、より詳細な情報を表示する関数などを用意しているパッケージも多い。
なお、math
やos
などの標準ライブラリのモジュールには__version__
は設定されていない。標準ライブラリのモジュールは個別にバージョンを持っているわけではなく、Python本体のバージョンに準ずる。
pipコマンドで確認: pip list, pip freeze, pip show
Pythonのパッケージ管理システムpipを使用している場合は、以下のコマンドでインストール済のパッケージ情報を確認できる。コマンドプロンプトやターミナルなどでコマンドを実行する。
環境によってはpip
コマンドではなくpip3
コマンドを使う。Python2がpip
、Python3がpip3
に割り当てられている場合がある。
パッケージのインストールやアップデート、アンインストールなど、pipの基本的な使い方については以下の記事を参照。
インストール済パッケージの一覧表示: 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
表示フォーマットはlegacy
, columns
, freeze
, json
の4種類がある。pipの設定ファイルpip.conf
か--format <format-name>
オプションで指定する。それぞれのフォーマットでの出力例は以下の記事を参照。
pip list
では以下のオプションが使える。
-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
pip freeze
とpip list --format freeze
の違いは、pip freeze
では、
pip
setuptools
distribute
wheel
といったパッケージ管理ツールがデフォルトで表示されないこと。(--all
オプションをつければすべて表示される)
freeze
形式の出力をテキストファイルとして保存しておくと、パッケージを指定のバージョンで一括インストールできる。
このような用途ではpip
などのパッケージ管理ツールをリストアップする必要がないので、pip freeze
ではデフォルトで表示されないようになっている。
インストール済パッケージの個別詳細表示: pip show
一覧ではなく特定のパッケージの詳細情報を表示したい場合はpip show <package-name>
コマンドを使う。
バージョン情報のほか、依存パッケージやホームページなどの詳細情報が表示される。
$ 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: pydata@googlegroups.com
License: BSD
Location: /usr/local/lib/python3.6/site-packages
Requires: pytz, numpy, python-dateutil
condaコマンドで確認
AnacondaでPython環境を構築した場合は、conda list
で現在の仮想環境にインストールされているパッケージが一覧表示される。
環境がactivate
されていない場合は、conda list -n <環境名>
。