如何使用 Python 获取子 class 的完整 class 名称
How to get the full class name of a sub-class with Python
我需要获取子类的全名。
示例:
class Foo:
class Bar:
pass
x = Foo.Bar()
print(x.__class__.__name__)
输出:条
预期:Foo.Bar
使用type
.
class Foo:
class Bar:
pass
x = Foo.Bar()
print(type(x))
<class '__main__.Foo.Bar'>
脱__main__
由你决定。
您可以使用 __qualname__
, this is the fully qualified name of the __class__
class Foo:
class Bar:
pass
x = Foo.Bar()
print(x.__class__.__qualname__)
#OUTPUT: Foo.Bar
最好的方法是在 type
上调用它,它已经在实例上调用了 __class__
:
class Foo:
class Bar:
pass
x = Foo.Bar()
print(type(x).__qualname__)
#OUTPUT: Foo.Bar
我需要获取子类的全名。
示例:
class Foo:
class Bar:
pass
x = Foo.Bar()
print(x.__class__.__name__)
输出:条
预期:Foo.Bar
使用type
.
class Foo:
class Bar:
pass
x = Foo.Bar()
print(type(x))
<class '__main__.Foo.Bar'>
脱__main__
由你决定。
您可以使用 __qualname__
, this is the fully qualified name of the __class__
class Foo:
class Bar:
pass
x = Foo.Bar()
print(x.__class__.__qualname__)
#OUTPUT: Foo.Bar
最好的方法是在 type
上调用它,它已经在实例上调用了 __class__
:
class Foo:
class Bar:
pass
x = Foo.Bar()
print(type(x).__qualname__)
#OUTPUT: Foo.Bar