忽略某些属性的__eq__方法

时间:2018-06-21 00:13:40

标签: python class methods

这是我的课程:

class Test():
    def __init__(self, book1, book2, book3):
        self._book1 = book1
        self._book2 = book2
        self._book3 = book3

    def__eq__:?????

我需要创建一个__eq__方法,该方法仅在Testbook1输入相等时检查两个book2类是否相等。 book3输入可以不同,并且类仍然相等。

test1 = Test()
test2 = Test()

因此,仅在test1 == test2book1相同的情况下,我想在添加以上3个参数后使book2为真。

1 个答案:

答案 0 :(得分:3)

这未经测试,但类似:

def __eq__(self, other):
    return (self._book1, self._book2) == (other._book1, other._book2)

应该可以解决问题。