list.sort的使用方法
时间: 2024-06-13 11:06:16 浏览: 106
list的使用
list.sort()是Python中用于对列表进行排序的方法。它可以接受一个可选的关键字参数key,用于指定一个函数来从每个列表元素中提取一个比较键(例如按照元素的某个属性进行排序)。此外,还可以使用reverse参数来指定是否按照降序排序。下面是一些使用list.sort()方法的例子:
1. 对列表进行升序排序
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort()
print(my_list) # 输出:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
```
2. 对列表进行降序排序
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort(reverse=True)
print(my_list) # 输出:[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
```
3. 按照元素的某个属性进行排序
```python
class Student:
def __init__(self, name, age, height):
self.name = name
self.age = age
self.height = height
def __repr__(self):
return f"Student(name='{self.name}', age={self.age}, height={self.height})"
students = [
Student("Alice", 20, 170),
Student("Bob", 19, 175),
Student("Charlie", 21, 165),
Student("David", 20, 180),
]
# 按照年龄进行升序排序
students.sort(key=lambda s: s.age)
print(students) # 输出:[Student(name='Bob', age=19, height=175), Student(name='Alice', age=20, height=170), Student(name='David', age=20, height=180), Student(name='Charlie', age=21, height=165)]
# 先按照年龄进行排序,如果年龄相同的按照身高进行升序排序
students.sort(key=lambda s: (s.age, s.height))
print(students) # 输出:[Student(name='Bob', age=19, height=175), Student(name='Alice', age=20, height=170), Student(name='David', age=20, height=180), Student(name='Charlie', age=21, height=165)]
```
阅读全文