Python でインストール済みモジュールの動作を調べたい時は、-m pdb
オプションに続けて -m <Module Name>
を指定します。
この機能は Python 3.7 以降 で使えます。
$ # Intel Mac + macOS Big Sur (11.2) + Python 3.8.2
$ python3 -m pdb -m pip list
> /Users/username/Library/Python/3.8/lib/python/site-packages/pip/__main__.py(1)<module>()
-> import os
-m オプションの意味
python -m
は、該当のモジュールを sys.path
から探し、見つかったファイルをスクリプトとして直接実行するコマンドです。
https://docs.python.jp/3/using/cmdline.html#cmdoption-m
したがって、次のコードはどちらも同じ動作になります。
$ python3 -m pip list
$ python3 /Users/username/Library/Python/3.8/lib/python/site-packages/pip/__main__.py list
モジュールの探し方
pip
などでインストールしたモジュールであれば pip show
が使えます。
$ python3 -m pip show pip
Name: pip
Version: 21.0.1
Summary: The PyPA recommended tool for installing Python packages.
Home-page: https://pip.pypa.io/
Author: The pip developers
Author-email: distutils-sig@python.org
License: MIT
Location: /Users/username/Library/Python/3.8/lib/python/site-packages
Requires:
Required-by:
また、モジュールの __file__
属性を調べることもできます。
$ python3
>>> import pip
>>> pip.__file__
'/Users/username/Library/Python/3.8/lib/python/site-packages/pip/__init__.py'
PuDB を使う
PuDB を使うとインタラクティブな CUI デバッガを起動することができます。
$ # Intel Mac + macOS Big Sur (11.2) + Python 3.8.2 + PuDB 2020.1
$ # pudb をインストール
$ python3 -m pip install pudb
$ # pdb のかわりに pudb を使う
$ python3 -m pudb -m pip list
参考資料
-
コマンドラインと環境
https://docs.python.jp/3/using/cmdline.html -
pdb — Python デバッガ
https://docs.python.jp/3/library/pdb.html -
Full-screen console debugger for Python
https://github.com/inducer/pudb -
Python の CUI デバッガ「PuDB」の紹介と使い方
https://qiita.com/Kernel_OGSun/items/144c8502ce2eaa5e4410 -
mac に SciPy がプリインストールされているか調べる
https://yokaze.github.io/2017/09/17/