python - 如果我只知道 python 中的绑定(bind)方法,如何获取类名?

标签 python oop classname

<分区>

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

示例代码如下:

>>> 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

最佳答案

如果你想要它的名字:

boundmethod.im_class.__name__

或者在 python 3 中:

boundmethod.__self__.__class__.__name__

关于python - 如果我只知道 python 中的绑定(bind)方法,如何获取类名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15924772/

相关文章:

javascript - 查找 SVG 元素的类名

java - 动态选择对象

javascript - 在元素上使用重复的类名?

python - Jupyter Lab - Kite 已安装但无法正常工作

Python Tkinter - 使用退出按钮关闭子窗口

c++ - 关于碰撞检测系统中类结构的建议

php - 可以选择自定义类,但有统一的类名

jquery 开关不改变 css(3 种颜色)

python - Django 多步表单向导模型表单

python - Mac 上 Python 中的 MIDI 程序没有声音