oinume journal

Scratchpad of what I learned

Pythonでモジュール内のクラスを抽出する

inspectを使えば簡単にできる。

 

 

class MyClass(object):

pass

 

def func():

pass

 

 

な感じのmymodule.py があるとして

 

 

#!/usr/bin/env python

 

import inspect

import mymodule

 

for name, member in inspect.getmembers(mymodule):

if inspect.isclass(member):

print "%s is class." % name

 

 

みたいにやれば mymodule からクラスだけ抜き出せる。

 

inspectというモジュールはリンク先のマニュアルをざっと見てもらえばわかるように、モジュールやクラスや関数のメタ情報を色々取れるので超絶便利である。これは本当にすごい。

 

[tmkm-amazon]4048686291[/tmkm-amazon]