PHP前端开发

Python 类方法难题:__getattribute__ 如何访问类变量中的方法?

百变鹏仔 5天前 #Python
文章标签 方法

python 类方法遇到的难题:__getattribute__ 无法访问类变量中的方法

在 python 中,使用 __getattribute__ 可以查找类的方法,但有时却无法调用类变量中的方法。为了解决此问题,需要思考以下几点:

在案例中,可以通过在 pointer 类中定义一个 __str__ 方法来解决问题:

class Pointer:    def __init__(self, value=None):        ...    def __getattribute__(self, item):        ...    def __str__(self):        return getattr(self.__value, '__str__')()

这样,在调用 s.__str__ 时,就会直接调用类变量 __value 中的 __str__ 方法。

立即学习“Python免费学习笔记(深入)”;