设置排序?
正如我们所知,不考虑集合中元素的顺序。那么谈论 Python 3 中的排序集合有意义吗?! (这就是为什么标题中有一个问号)
为了快速找到集合中的元素,最好将它们以有序的形式存储在内存中。
让我们看一些例子。同一集合中不同数据类型的元素会发生什么情况? 这样的元素不应该被排序。如果我们使用 print()
命令打印元素,它们将像这样输出:
a = {0, 1, 12, 'b', 'ab', 3, 2, 'a'}
print(a) # {0, 1, 2, 3, 'a', 12, 'b', 'ab'}
在这种情况下,显示未排序的值。如果重复启动,则输出顺序可能不同。但这只是在混合不同类型的元素时。
让我们尝试显示一种类型的数据(例如,只有数字):
一 = {0, 1, 12, 3, 2}
打印(a) # {0, 1, 2, 3, 12}
所有元素都按顺序显示。让我们尝试将其转换为列表:
一 = {0, 1, 12, 3, 2}
b = 列表(a)
打印(b) # [0, 1, 2, 3, 12]
同样,将按升序排列的元素写入列表。
事实证明,如果元素类型相同,则它们以有序的形式存储在内存中。但最好不要指望它,Python 算法会改变。
如果你需要从集合中得到一个排序列表,最好使用sort
(< code>sorted) 函数以确保 )。元素将被精确排序。您的代码将被其他人理解。