0
入れ子になったクラスB
考える:入れ子になったクラスの完全な名前を取得します
class A:
class B:
def __init__(self):
pass
ab = A.B()
どのように私はab
のクラスの完全な名前を取得することができますか?私はA.B
のような結果を期待しています。
入れ子になったクラスB
考える:入れ子になったクラスの完全な名前を取得します
class A:
class B:
def __init__(self):
pass
ab = A.B()
どのように私はab
のクラスの完全な名前を取得することができますか?私はA.B
のような結果を期待しています。
あなたは、その__class__
の、完全修飾名、__qualname__
を得ることができる:
>>> ab.__class__.__qualname__
'A.B'
好ましくは(インスタンス上で__class__
を呼び出す)type
を使用して:
>>> type(ab).__qualname__
ありがとうございます。 –
をなぜあなたは、ネストクラスですか?あなたはその名前のために何が必要ですか?あなたが解決しようとしている実際の問題は何ですか? – jonrsharpe
私の最大の理由の一つは、モジュールのための良い練習のようなショーです。例えば、私はすべてのモジュールのための封筒である1つのクラスを持っています。私はPythonがモジュールのための完璧なソリューションを持っていないので、それを使用します。 第2の理由は、問題の分解が良好です。 –
それは大きな理由ではありません。 Python *はモジュールの解決策を持っていますが、それは誤ったモジュールです。 '__init __。py'を含むファイルまたはディレクトリがモジュールです。クラス内のすべてをラップする必要はありません。これはJavaではありません。たぶんあなたはその質問に代わりに質問していたはずです。 – jonrsharpe