📅  最后修改于: 2023-12-03 15:04:17.084000             🧑  作者: Mango
排序是编程中经常使用的一个操作,Python 提供了多种方法来对列表进行排序。本文将介绍 Python 中常见的三种排序方法:sort()、sorted() 和 lambda 函数。
sort() 方法是一个列表对象自带的方法,用于对列表进行排序。它可以改变列表本身,也可以创建一个新的排序后的列表。默认情况下,sort() 方法使用升序排序。
fruits = ['apple', 'banana', 'orange', 'kiwi']
fruits.sort()
print(fruits)
输出:
['apple', 'banana', 'kiwi', 'orange']
还可以使用 reverse
参数进行倒序排序:
fruits = ['apple', 'banana', 'orange', 'kiwi']
fruits.sort(reverse=True)
print(fruits)
输出:
['orange', 'kiwi', 'banana', 'apple']
sort() 方法还接受一个关键字参数 key
,用于指定一个排序函数。例如,按照字符串长度进行排序:
fruits = ['apple', 'banana', 'orange', 'kiwi']
fruits.sort(key=len)
print(fruits)
输出:
['kiwi', 'apple', 'banana', 'orange']
sorted() 函数可以对任何可迭代对象进行排序,返回一个新的排序后的列表。和 sort() 方法不同,sorted() 函数不会改变原来的列表。
fruits = ['apple', 'banana', 'orange', 'kiwi']
sorted_fruits = sorted(fruits)
print(sorted_fruits)
输出:
['apple', 'banana', 'kiwi', 'orange']
sorted() 函数也可以接受 reverse
和 key
参数:
fruits = ['apple', 'banana', 'orange', 'kiwi']
sorted_fruits = sorted(fruits, reverse=True)
print(sorted_fruits)
sorted_fruits = sorted(fruits, key=len)
print(sorted_fruits)
输出:
['orange', 'kiwi', 'banana', 'apple']
['kiwi', 'apple', 'banana', 'orange']
lambda 函数可以用来生成排序函数,使代码更加简洁。例如,按照字符串长度排序:
fruits = ['apple', 'banana', 'orange', 'kiwi']
sorted_fruits = sorted(fruits, key=lambda x: len(x))
print(sorted_fruits)
输出:
['kiwi', 'apple', 'banana', 'orange']
lambda 函数也可以用来生成倒序排序函数:
fruits = ['apple', 'banana', 'orange', 'kiwi']
sorted_fruits = sorted(fruits, key=lambda x: len(x), reverse=True)
print(sorted_fruits)
输出:
['orange', 'banana', 'apple', 'kiwi']
以上就是 Python 中常见的三种排序方法。无论您是初学者还是有经验的程序员,都应该掌握这些基本的排序方法。