月關(guān)寶盒
2023-09-12 19:58:22
我需要獲取子類的全名。例子:class Foo: class Bar: passx = Foo.Bar()print(x.__class__.__name__)輸出:Bar預(yù)期:Foo.Bar
2 回答

眼眸繁星
TA貢獻(xiàn)1873條經(jīng)驗(yàn) 獲得超9個(gè)贊
您可以使用__qualname__
,這是 的完全限定名稱__class__
class Foo:
? ? class Bar:
? ? ? ? pass
x = Foo.Bar()
print(x.__class__.__qualname__)
#OUTPUT: Foo.Bar
最好的方法是在 上調(diào)用它,它已經(jīng)在實(shí)例上type
調(diào)用:__class__
class Foo:
? ? class Bar:
? ? ? ? pass
x = Foo.Bar()
print(type(x).__qualname__)
#OUTPUT: Foo.Bar

MMTTMM
TA貢獻(xiàn)1869條經(jīng)驗(yàn) 獲得超4個(gè)贊
使用type.
class Foo:
class Bar:
pass
x = Foo.Bar()
print(type(x))
<class '__main__.Foo.Bar'>
脫__main__不脫,由你決定。
添加回答
舉報(bào)
0/150
提交
取消