Python:将一个mutable列表转换为一个集合

时间:2018-01-17 19:21:41

标签: python set immutability

我来自C ++并且是Python新手。我有一个课程如下。

 class pair:
    u=0
    v=0
    def __init__(self, x,y):
        self.u=x
        self.v=y


    def __eq__(self,ot):
        if self.u==ot.u and self.v==ot.v:
            return True

        return False        

我想要一个返回两个对列表的交集的函数。

def intersection(P,Q):
     return len(set(P).intersection(set(Q)))

我收到此错误:

TypeError: unhashable type: 'pair'

来自C ++我不明白为什么不允许将这样的列表变成一组。可以使用列表的不可变快照来创建集合吗?

0 个答案:

没有答案