编辑这个页面须要登录或更高权限!

Python 列表 sort() 使用方法及示例

Python 列表方法

sort()方法对给定列表的元素进行排序。

sort()方法以特定顺序(升序或降序)对给定列表的元素进行排序。

sort()方法的语法为:

list.sort(key=..., reverse=...)

另外,您也可以出于相同的目的使用Python的内置函数sorted()

sorted(list, key=..., reverse=...)

注意: sort()和sorted()之间最简单的区别是:sort()不返回任何值,而sorted()返回可迭代的列表。

sort()参数

默认情况下,sort()不需要任何其他参数。但是,它有两个可选参数:

  • reverse -如果为true,则排序后的列表将反转(或以降序排序)

  • key -用作排序比较键的函数

sort()返回值

sort()方法不返回任何值。相反,它将更改原始列表。

如果要原始列表,请使用sorted()。

示例1:对给定列表进行排序

# 元音列表
vowels = ['e', 'a', 'u', 'o', 'i']

# 对元音进行排序
vowels.sort()

# 打印元音
print('排序后的列表:', vowels)

运行该程序时,输出为:

排序后的列表: ['a', 'e', 'i', 'o', 'u']

如何以降序排序?

sort()方法接受一个reverse参数作为可选参数。

设置reverse=True按降序对列表进行排序。

list.sort(reverse=True)

或者,对于sorted(),可以使用以下代码。

sorted(list, reverse=True)

示例2:以降序对列表进行排序

# 元音列表
vowels = ['e', 'a', 'u', 'o', 'i']

# 元音排序
vowels.sort(reverse=True)

# 打印元音
print('排序列表(降序排列):', vowels)

运行该程序时,输出为:

排序列表(降序排列): ['u', 'o', 'i', 'e', 'a']

如何使用自己的函数和关键参数进行排序?

如果您希望用自己的方法进行排序,sort()还可以将key函数作为可选参数。

根据key函数的结果,可以对给定列表进行排序。

list.sort(key=len)

也可以排序

sorted(list, key=len)

在这里,len是Python的内置函数,用于计算元素的长度。

该列表根据其每个元素的长度(从最低到最高计数)进行排序。

示例3:使用键对列表进行排序

# 用第二个元素排序
def takeSecond(elem):
    return elem[1]

# 随机列表
random = [(2, 2), (3, 4), (4, 1), (1, 3)]

# 键排序列表
random.sort(key=takeSecond)

# 打印列表
print('排序后的列表:', random)

运行该程序时,输出为:

排序后的列表: [(4, 1), (2, 2), (1, 3), (3, 4)]

Python 列表方法

Python 基础教程
Python 流程控制
Python 函数
Python 数据类型
Python 文件操作
Python 对象和类
Python 日期和时间
Python 高级知识
Python 参考手册