python - Python - 有没有办法从方法中访问它所附加的类?
问题描述
在 Python 中,如果我在一个类中定义一个方法,我可以使用以下命令访问包含的类__class__
:
>>> class A:
... def f(self):
... print(__class__)
...
>>> class B(A):
... pass
...
>>> B().f()
<class '__main__.A'>
但是,如果我在类外部定义方法,然后将其附加到类,则不__class__
可用:
>>> class A:
... pass
...
>>> def f(self):
... print(__class__)
...
>>> A.f = f
>>> class B(A):
... pass
...
>>> B().f()
NameError: name '__class__' is not defined
在第二种情况下,有没有办法从方法中访问它所附加f
的类?A
解决方案
从属性中检索的值不记得它们来自哪里。您无法从在类定义之后附加的方法中获取类。
推荐阅读
- reactjs - create-react-app 的 index.js 文件是如何解析 JSX 的?
- core-graphics - 如何设置 `UIColor(patternImage:)` 的频率?
- python - 如何将if语句的输出保存在列表中
- testing - 如何处理无法使用 Testcafe 建立的浏览器连接
- mysql - “COLLATION 'utf8_general_ci' 对 CHARACTER SET 'utf8mb4' 无效”
- javascript - 在表格中动态生成弹出框
- usb - 编写 USB 自定义 HID 报告描述符
- python - 如何使用 python 从数据框中删除/删除第一行/列?
- react-native - 在 react-navigation v6 中设置 headerTransparent: true 时堆栈导航按不起作用
- c++ - C/C++ to LLVM IR API - Is there a programmatic way to compile?