Python でインスタンスのクラス名を取得 ― 2021年04月28日 11時53分52秒
% cat class_name.py
#!/usr/local/bin/python3.7
class Base:
pass
class Derived( Base ):
pass
b = Base()
d = Derived()
print( b.__class__.__name__ )
print( d.__class__.__name__ )
実行結果は以下の通り。
% python3.7 class_name.py
Base
Derived
C++ 等でも typeid を用いると動的にインスタンスのクラス名等を取得できるが、アーキテクチャ依存の出力なのと、実行時の実行速度が気になって避ける傾向になる。
Python では実行速度は早い方が良いが、切り詰める程までは目指さないので、こういうスクリプト言語ならの良さがある。実行速度は目指さないが、各種コードでも汎用性拡張性を重視。
最近のコメント