使方法返回“自身”以链接方法调用是否很好?

时间:2018-11-25 12:46:47

标签: python memory-management method-chaining function-call

我有一个课程,例如:

class Example:

    def __init__(self):
        self.x = 1

    def add(self):
        self.x += 1
        return self

如果要链接方法,可以使用:

my_example = Example()
my = my_example.add().add().add().add().add().add()
# Use 'my' later on and modify and so on...

每当我使用add()之类的东西时,它将消耗越来越多的内存吗?

我想构建一个具有方法链接功能的库,但只是想知道这样做好吗?

1 个答案:

答案 0 :(得分:3)

它不会消耗更多的内存,因为self是对同一对象的引用。

“这好吗?” -取决于所需的功能。如果要修改现有对象,那应该没事。