>>> nums = {n**2 for n in range(10)}
>>> nums
{0, 1, 64, 4, 36, 9, 16, 49, 81, 25}
我不明白为什么数字乱了?它不应该是{0,1,4,9…}吗?
这是因为您创建了一个集合,而集合是无序的。如果你想要订单,你应该使用标准的列表理解:
>>> nums = [n**2 for n in range(10)]
>>> nums
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
您只是在使用set
。set
是一个无序的数据结构。
一种方法可以是使用CCD_ 3方法。
sorted_lst = sorted(nums)
输出
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]