在 Python 中为类集合 class 实现交集运算符

Implementing intersection operator for a set-like class in Python

我正在尝试实现一个包装器 class,理想情况下,它应该允许我使用以下符号获得其元素的交集:

a & b

有没有我可以实施的具体方法来实现这一点? (我知道个别元素需要实现__hash____eq__方法)

我目前遇到以下错误:

TypeError: unsupported operand type(s) for &: 'PropArray' and 'PropArray'

尝试覆盖:

def __and__(self, *args, **kwargs): # real signature unknown
    """ Return self&value. """
    pass

在你的class