Python

【Python】モジュールのソースコードを確認する方法【inspect】

この記事では、Pythonでモジュールのソースコードを確認する方法を解説します。

ビルトイン(組み込み)以外のモジュールのみ確認できます

プログラミングしているとインストールしたモジュールのソースコードを確認したい時がたまにあります。そんな時は、inspectモジュールを使うことで簡単に確認することができます。

確認方法

それでは、実際にモジュールのソースコードを確認してみましょう!

書式

モジュールのコードを確認するにはinspectモジュールのgetsourceメソッドを使います。

import inspect

inspect.getsource(オブジェクト)

引数

引数には、モジュール、クラス、メソッド、関数、トレースバック、フレーム、コードオブジェクトを指定することができます。

戻り値

ソースコードは文字列で返されます。

サンプル

試しに、numpyモジュールのソースコードを確認してみましょう!

import inspect
import numpy

print(inspect.getsource(numpy))

実行結果

"""
NumPy
=====

Provides
  1. An array object of arbitrary homogeneous items
  2. Fast mathematical operations over arrays
  3. Linear Algebra, Fourier Transforms, Random Number Generation

How to use the documentation
----------------------------
Documentation is available in two forms: docstrings provided
with the code, and a loose standing reference guide, available from
`the NumPy homepage <https://www.scipy.org>`_.

We recommend exploring the docstrings using
`IPython <https://ipython.org>`_, an advanced Python shell with
TAB-completion and introspection capabilities.  See below for further
instructions.

The docstring examples assume that `numpy` has been imported as `np`::

  >>> import numpy as np
    ・
    ・
    ・
   省略

numpyモジュールのソースコードを確認することができました!

また、ビルトイン(組み込み)モジュールを確認すると以下のようになります。

import sys

print(inspect.getsource(sys))

実行結果

<module 'sys' (built-in)>

まとめ

この記事では、モジュールのソースコードを確認する方法を解説しました。inspectモジュールのgetsourceメソッドを使うことで、モジュール以外にも様々なソースコードを確認することができます。とても便利なので頭の片隅に入れておきましょう!

それでは今回の内容はここまでです。ではまたどこかで〜( ・∀・)ノ

参考 inspect — 活動中のオブジェクトの情報を取得する — Python 3.9.1 ドキュメント

【おすすめ】Python参考書

一冊目におすすめ

created by Rinker

プログラミング初心者の方向き。とても優しい内容になっています。

二冊目におすすめ

created by Rinker

他言語を学んだことある方や中級者にスキルアップを目指している方向けです。

ゲーム開発に興味があるなら

created by Rinker

本書では基礎を学びながらゲームを作っている雰囲気を味わうことできます。