我正在使用 The Quick Python Book 学习 Python 3,作者在其中谈到了frozensets,并指出由于 set 是可变的,因此不可散列,因此不适合作为字典键,因此引入了它们的 freeze 对应项。除了元组是有序数据结构而frozenset(或更一般地说是集合)是无序的明显区别之外,元组和frozenset之间还有其他区别吗?
最佳答案
tuples
是不可变的lists
,frozensets
是不可变的sets
。
tuples
确实是对象的有序集合,但它们可以包含重复和不可散列的对象,并且具有切片功能
frozensets
没有被索引,但你有 sets
的功能 - O(1) 元素查找,以及联合和交集等功能。它们也不能包含重复项,就像它们的可变对应项一样。
关于python - Python中元组和卡住集之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14422409/