2.11.4 简单排序

在以下范例list中,有2010~2020年北京的10月份房屋均价,很显然,它们都是数值类型。


>>> beijing_house_prices = [24392, 25964, 29071, 40054, 36994, 40702, 53552, 
    58077, 59943, 59126, 57691]

list内置了对排序的支持,用sort方法我们可以轻松做到升序或降序排序。


>>> beijing_house_prices.sort()
>>> beijing_house_prices
[24392, 25964, 29071, 36994, 40054, 40702, 53552, 57691, 58077, 59126, 59943]
>>>
>>> beijing_house_prices.sort(reverse=True)
>>> beijing_house_prices
[59943, 59126, 58077, 57691, 53552, 40702, 40054, 36994, 29071, 25964, 24392]

不过,对历史房价做排序的意义并不大,我们更关心的可能是其中的最高价和最低价。

用max函数获取list中元素的最大值。


>>> max(beijing_house_prices)
59943

用min函数获取list中元素的最小值。


>>> min(beijing_house_prices)
24392

对于string类型的list,我们也可以对它进行排序,默认情况下,是按照字母顺序排序的。


>>> animals = ['pig', 'dog', 'zebra', 'ape']
>>> animals
['pig', 'dog', 'zebra', 'ape']

>>> animals.sort()
>>> animals
['ape', 'dog', 'pig', 'zebra']

对于更复杂的组合数据类型,或者自定义类型队列的排序,我们留待后续章节再讨论。