4

在 pyton 代码中,我有一些对象的绑定方法。只知道这个绑定方法我想知道那个对象的类是什么。是否可以?

这是示例代码:

>>> class x:
...     def method(self):
...             pass
...
>>> x
<class __main__.x at 0xb737d1ac> 
>>> x_instance = x()
>>> x_instance
<__main__.x instance at 0xb737c7cc>
>>> boundmethod = x_instance.method
>>> boundmethod
<bound method x.method of <__main__.x instance at 0xb737c7cc>>
>>> str(boundmethod)
'<bound method x.method of <__main__.x instance at 0xb737c7cc>>'

假设我只知道boundmethod. 如何确定类是x

4

1 回答 1

6

如果你想要它的名字:

boundmethod.im_class.__name__

或者在 python 3 中:

boundmethod.__self__.__class__.__name__
于 2013-04-10T11:42:07.023 回答