Tutorial Study Image

Python sort()

Python 中的 sort() 函数用于按用户定义的顺序(升序或降序)对列表进行排序。默认情况下,sort() 按升序排序。


list.sort(key=..., reverse=...) #where key is function name
 

sort() 参数

此函数接受两个可选参数。我们也可以使用 **sorted(list, key=..., reverse=...)** 方法实现相同的目的。区别在于 sorted() 方法不会改变原始列表并返回一个已排序的列表,而 sort() 方法会直接改变原始列表并且不返回任何值。

参数 描述 必需/可选
reverse 如果为 True,则排序后的列表将反转(或按降序排列) 可选
用作排序比较键的函数 可选

sort() 返回值

sort() 方法不返回任何值。它通过更改元素的顺序来更新原始列表。要返回已排序列表而不更改原始列表,我们可以使用 sorted() 方法。

Python 中 sort() 方法的示例

示例 1:如何在 Python 中对列表进行排序?


# alphabets list
alphabets = ['b', 'a', 'e', 'd', 'c']

# sort the alphabets
alphabets.sort()

# print alphabets
print('Sorted list:', alphabets)
 

输出


Sorted list: ['a', 'b', 'c', 'd', 'e']

示例 2:如何按降序对列表进行排序?


# alphabets list
alphabets = ['b', 'a', 'e', 'd', 'c']

# sort the alphabets
alphabets.sort(reverse=True)

# print alphabets
print('Sorted list in Descending order:', alphabets)
 

输出


Sorted list in Descending order: ['e', 'd', 'c', 'b', 'a']

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


# take second element for sort
def second(elem):
    return elem[1]

# random list
randomlist = [(2, 2), (3, 4), (4, 1), (1, 3)]

# sort list with key
randomlist.sort(key=second)

# print list
print('Sorted list:', randomlist)
 

输出


Sorted list: [(4, 1), (2, 2), (1, 3), (3, 4)]