添加我的 class 的两个实例

Add two instances of my class

我想这样添加到我的 class Bar 的实例中:

x = Bar([5, 12, 5])
y = Bar([4, 5, 6])
x+y #Bar([9, 17, 11])

这里是 class:

class Bar:
    def __init__(self, arr):
        self.items = arr
    def __repr__(self):
        return "Bar("+str(self.items)+")"

您必须为您的 class 实现一个 __add__ 方法:

def __add__(self, new):
    newlst = [];
    for i, j in zip(self.items, new.items):
        newlst.append(i+j)
    return Bar(newlst)

因此:

>>> x = Bar([5, 12, 5])
>>> y = Bar([4, 5, 6])
>>> x+y
Bar([9, 17, 11])

class Bar:
    def __init__(self, arr):
        self.items = arr
    def __repr__(self):
        return "Bar("+str(self.items)+")"
    def __add__(self, new):
        newlst = [];
        for i, j in zip(self.items, new.items):
            newlst.append(i+j)
        return Bar(newlst)