在pyton代碼中,我有一個對象的綁定方法。只知道這個綁定的方法,我想知道該對象的類是什麼。可能嗎?如何知道類的名稱,如果我只知道python中的綁定方法?
下面是示例代碼:
>>> 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
?
考慮看看[這](http://stackoverflow.com/questions/4679592/how-to-find-instance-of-a後在python中的方法)問題我知道我可以像'boundmethod.im_self .__ class __.__ name__'這樣做。有沒有更簡單的方法? – 2013-04-10 11:40:59
爲什麼會有更簡單的方法?你爲什麼傳遞綁定的方法而不是綁定的對象呢? – geoffspear 2013-04-10 11:43:03
看着jamylak評論我終於找到了解決方案:'boundmethod.im_class .__ name__'。謝謝。 – 2013-04-10 11:43:28