Python中的`sort()`函数用于对列表或元组中的元素进行原地排序。以下是`sort()`函数的基本用法:
list_or_tuple.sort(key=None, reverse=False)
`key`参数:这是一个可选参数,用于指定一个函数,该函数会在排序时应用于列表或元组中的每个元素。如果`key`参数为`None`,则使用元素自身的值进行比较。
`reverse`参数:这也是一个可选参数,用于指定排序的顺序。如果`reverse`参数为`True`,则列表或元组中的元素将按降序排序;如果为`False`(默认值),则按升序排序。
下面是一些使用`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
def __repr__(self):
return f"{self.name} ({self.age})"
people = [Person("Alice", 30), Person("Bob", 25), Person("Charlie", 35)]
people.sort(key=lambda x: x.age)
print(people) 输出:['Bob (25)', 'Alice (30)', 'Charlie (35)']
请注意,`sort()`方法会修改原始列表或元组,不会返回一个新的排序后的列表。