首页 > 解决方案 > set 返回的元素顺序

问题描述

所以我将一个包含重复元素的列表转换为一个集合,让每个元素出现一次。我知道集合是无序的,所以它们会按照给定的顺序显示元素。我运行了下面的脚本,我注意到一个奇怪的输出。

mylist = [1,2,2,33,4,4,11,22,3,3,2]

print(set(mylist))

输出将是:

{1, 2, 33, 4, 3, 11, 22}

原始列表中的 3 出现在 11 和 22 之后,那么为什么它在集合中出现在它们之前呢?

标签: pythonlistset

解决方案


Python 中的集合没有顺序

集合对象是不同的可散列对象的无序集合。常见用途包括成员资格测试、从序列中删除重复项以及计算数学运算,例如交集、并集、差分和对称差分。

https://docs.python.org/3/library/stdtypes.html#set-types-set-frozenset


推荐阅读