怎样在一个序列上面保持元素顺序的同时消除重复的值
如果序列上的值都是hashable 类型,那么可以很简单的利用集合或者生成器来解
决这个问题。如果一个对象在其生命周期内有一个固定不变的哈希值 (这需要__hash__()方法) 且可以与其他对象进行比较操作 (这需要__eq__()方法) ,那么这个对象就是可哈希对象 (hashable) 。可哈希对象必须有相同的哈希值才算作相等。比如:
def dedupe(items):
seen = set()
for item in items:
if item not in seen:
yield item
seen.add(item)
python 第五天hashable 类型
最新推荐文章于 2024-08-11 22:42:08 发布