排序列表
Python 列表有一个内置的 sort()
方法,它使用项之间的 <
比较来原地排序项。
该方法还接受 2 个关键字参数:
key
用于指定一个函数,该函数在进行比较之前对每个列表元素调用。reverse
是一个布尔值,指定列表是否按降序排序。
python
>>> l = [34, 4, 6, 23]
>>> l.sort()
>>> l
[4, 6, 23, 34]
>>> l = [34, 4, 6, 23]
>>> l.sort(reverse=True)
>>> l
[34, 23, 6, 4]
>>> l = ["Oh", "Hi", "Py", "ed"]
>>> l.sort()
>>> l
['Hi', 'Oh', 'Py', 'ed']
>>> l = ["Oh", "Hi", "Py", "ed"]
#排序前将单词转换为小写
>>> l.sort(key=str.lower)
>>> l
['ed', 'Hi', 'Oh', 'Py']
如果你不想修改现有列表,而是创建一个包含已排序项的新列表,请使用内置的 sorted()
函数,它返回一个新的已排序列表。
python
>>> l = [34, 4, 6, 23]
>>> new_l = sorted(l)
>>> new_l
[4, 6, 23, 34]