当我在python中对集合使用sorted时,它返回排序列表。但我想把那套还回去。我尝试过set(sorted()),但它不能对集合进行排序。我试过另一种方法。但是为什么set(sorted())没有对集合进行排序呢?
发布于 2021-05-17 13:36:30
集合是无序的,这是它们的本质。获取一个集合(或任何集合),然后对其进行排序,然后从中生成一个集合,不太可能产生排序的结果。
如果您需要排序的项目,则应该将它们转换为可排序的内容(如列表,这是您从sorted(someSet)获得的)。例如:
>>> a = {100, 99, 1, 2, 5, 6} # A set
>>> sorted(a) # A sorted list from that set.
[1, 2, 5, 6, 99, 100]
>>> set(sorted(a)) # An (unsorted) set from that sorted list.
{1, 2, 99, 100, 5, 6}https://stackoverflow.com/questions/67564454
复制相似问题