python 的 sort() 函数对列表或元组元素进行原地升序或降序排序,具体用法如下:调用 sort() 修改原始列表或元组,按指定顺序排列元素。key 参数指定比较元素的函数或键表达式,用于自定义排序规则。reverse 参数指定按降序或升序排序,默认为升序。
Python sort() 函数
Python 中的 sort() 函数用于对列表或元组中的元素进行原地排序。
语法:
list_or_tuple.sort(key=None, reverse=False)
参数:
- key (可选):用于比较元素的函数或键表达式。
- reverse (可选,默认 False):指定按降序还是升序排序。
用法:
调用 sort() 函数时,它将修改原始列表或元组,并将其按给定的顺序排列。以下是一些使用 sort() 函数的示例:
# 升序排序数字列表
numbers = [5, 2, 8, 3, 1]
numbers.sort()
print(numbers) # 输出:[1, 2, 3, 5, 8]
# 降序排序字符串列表
names = ['Alice', 'Bob', 'Charlie', 'Dave', 'Eve']
names.sort(reverse=True)
print(names) # 输出:['Eve', 'Dave', 'Charlie', 'Bob', 'Alice']
# 使用比较函数排序对象列表
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
people = [
Person('Alice', 25),
Person('Bob', 30),
Person('Charlie', 22),
]
def compare(p1, p2):
return p1.age - p2.age
people.sort(key=compare)
print(people) # 输出:按年龄升序排列的 Person 对象列表
注意:
- sort() 函数只对列表或元组中的元素进行排序,而不是副本。
- 如果要对副本进行排序,可以使用 sorted() 函数,它返回一个已排序的新列表或元组。
- key 参数允许指定比较元素的自定义函数或键表达式,这在对自定义对象进行排序时很有用。