Python的sorted()函数:如何对列表进行排序?
发布时间:2023-11-13 04:48:38
sorted()函数是Python内置的一个排序函数,用于对多种类型的对象进行排序。在本文中,我们将重点介绍如何使用sorted()函数对列表进行排序。
示例1:对包含整数的列表进行升序排序
nums = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] sorted_nums = sorted(nums) print(sorted_nums)
输出结果为:[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
可以看到,sorted()函数已将列表nums中的元素按照升序排列。
示例2:对包含字符串的列表进行排序
fruits = ['orange', 'apple', 'banana', 'pear', 'grape'] sorted_fruits = sorted(fruits) print(sorted_fruits)
输出结果为:['apple', 'banana', 'grape', 'orange', 'pear']
在示例2中,sorted()函数同样成功地将列表fruits中的元素按字母表的顺序进行了排序。
示例3:对包含自定义对象的列表进行排序
class Student:
def __init__(self, name, grade):
self.name = name
self.grade = grade
def __repr__(self):
return f'Student(name={self.name}, grade={self.grade})'
students = [Student('Alice', 85), Student('Bob', 77), Student('John', 92), Student('Linda', 88)]
sorted_students = sorted(students, key=lambda x: x.grade, reverse=True)
print(sorted_students)
输出结果为:[Student(name=John, grade=92), Student(name=Linda, grade=88), Student(name=Alice, grade=85), Student(name=Bob, grade=77)]
在示例3中,我们定义了一个Student类,包含名字和成绩两个属性。使用sorted()函数时,我们可以通过传入一个key参数来指定排序的依据。在这里,我们使用lambda函数来指定按照学生的成绩进行降序排序。
除了key参数外,sorted()函数还提供了其他可选的参数,如reverse用于指定排序顺序是否为降序,默认值为False。
总结:
1. 使用sorted()函数可以对列表进行排序。
2. sorted()函数支持不同类型的列表,包括整数、字符串和自定义对象。
3. 可以通过传入key参数来指定排序的依据。
4. sorted()函数还提供了其他可选的参数,如reverse用于指定排序顺序是否为降序。
