質問: pythonモジュール内のすべての関数を一覧表示する方法 私は自分のシステムにインストールされているpythonモジュールを持っていて、どんな関数/クラス/メソッドがそれで利用可能かを見たいと思います。それぞれについてdoc関数を呼び出したい。 rubyでは、classname.methodsのようにしてそのクラスで利用可能なすべてのメソッドのリストを取得できます。 pythonに似たようなものはありますか?例えば。何かのようなもの:from somemodule import foo print foo.methods # or whatever is the correct method to call
回答: あなたがインポートエラーなしで上記のpythonファイルをインポートすることができないならば、これらの答えのどれもうまくいきません。これは私が多くの依存関係を持つ大規模なコードベースから来るファイルを調べていたときの私の場合でした。以下はファイルをテキストとして処理し、 "def"で始まるすべてのメソッド名を検索してそれらとその行番号を出力します。import re pattern = re.compile("def (.*)\(") for i, line in enumerate(open('example.py')): for match in re.finditer(pattern, line): print '%s: %s' % (i+1, match.groups()[0])