Python中的sorted()函数使用方法与举例
Python中的sorted()函数是一个内置函数,用于对可迭代对象进行排序。可迭代对象可以是列表、元组、字典等。sorted()函数可以按升序或降序对可迭代对象进行排序。
sorted()函数的语法格式如下:
sorted(iterable, key=None, reverse=False)
其中,参数iterable是要排序的可迭代对象;参数key是一个函数,用于指定排序的依据,可以省略;参数reverse表示是否按降序排序,默认为False。
下面就是一些 sorted()函数的常见用法和举例:
1. 对列表进行排序
sorted()函数可以对一个列表进行排序,例如:
a = [3, 9, 2, 8, 5]
a_sorted = sorted(a)
print(a_sorted)
输出结果为:
[2, 3, 5, 8, 9]
2. 按照指定的关键字进行排序
若想按照某个指定的关键字进行排序,可以使用key参数来指定排序的依据,例如:
students = [
{'name': 'Alice', 'grade': 80},
{'name': 'Bob', 'grade': 70},
{'name': 'Charlie', 'grade': 90},
{'name': 'David', 'grade': 85}
]
students_sorted = sorted(students, key=lambda x: x['grade'], reverse=True)
print(students_sorted)
输出结果为:
[{'name': 'Charlie', 'grade': 90}, {'name': 'David', 'grade': 85},
{'name': 'Alice', 'grade': 80}, {'name': 'Bob', 'grade': 70}]
上述例子中,使用了lambda函数来指定排序的关键字,即按照学生成绩从高到低排序。
3. 对字典按照key或value进行排序
可以使用sorted()函数对字典按照key或value进行排序,例如:
d = {'apple': 10, 'orange': 20, 'banana': 5, 'pear': 15}
d_sorted_key = sorted(d.items(), key=lambda x: x[0])
d_sorted_value = sorted(d.items(), key=lambda x: x[1])
print(d_sorted_key)
print(d_sorted_value)
输出结果为:
[('apple', 10), ('banana', 5), ('orange', 20), ('pear', 15)]
[('banana', 5), ('apple', 10), ('pear', 15), ('orange', 20)]
上述例子中,使用了.items()方法将字典转化为可迭代对象,并使用lambda函数来指定排序的依据。
4. 对元组进行排序
同样可以使用sorted()函数对元组进行排序,例如:
t = (3, 9, 2, 8, 5)
t_sorted = sorted(t)
print(t_sorted)
输出结果为:
[2, 3, 5, 8, 9]
总之,sorted()函数是Python内置的一个非常实用的函数,可用于对各种数据类型进行排序。在实际应用中,可以根据需要灵活使用。
