在Python中获取实例的类名

我如何找到一个在Python中创建一个对象实例的类的名字,如果我这样做的函数是派生实例类的基类?

在想,也许检查模块可能会帮助我在这里,但它似乎并没有给我想要的。 并没有解析__class__成员,我不知道如何得到这些信息。


您是否尝试过__name__属性? 即type(x).__name__会给你类的名字,我认为你想要的是这个名字。

>>> import itertools
>>> x = itertools.count(0)
>>> type(x).__name__
'count'

此方法仅适用于新式类。 你的代码可能会使用一些旧式的类。 以下两种作品适用于:

x.__class__.__name__

你想把这个类的名字当作一个字符串吗?

instance.__class__.__name__

type()?

>>> class A(object):
...    def whoami(self):
...       print type(self).__name__
...
>>>
>>> class B(A):
...    pass
...
>>>
>>>
>>> o = B()
>>> o.whoami()
'B'
>>>
链接地址: http://www.djcxy.com/p/1071.html

上一篇: Getting the class name of an instance in Python

下一篇: How to get current time in Python?