欢迎访问宙启技术站
智能推送

列表排序函数sorted()的使用方法

发布时间:2023-10-25 16:21:59

sorted()函数是Python内置的排序函数,用于对列表进行排序。它可以按照升序或降序对列表进行排序,并返回一个新的已排序的列表。

sorted()函数的基本使用方法如下:

sorted(iterable, key=None, reverse=False)

参数说明:

- iterable:需要排序的列表、元组或其他可迭代对象。

- key:可选参数,用于指定排序的依据。可以为一个函数或lambda表达式。

- reverse:可选参数,用于指定排序的顺序,True为降序,False为升序,默认为False。

下面是一些示例来说明sorted()函数的使用方法。

示例1:对列表进行升序排序

numbers = [5, 2, 9, 1, 7]
sorted_numbers = sorted(numbers)
print(sorted_numbers)

输出结果:

[1, 2, 5, 7, 9]

示例2:对列表进行降序排序

numbers = [5, 2, 9, 1, 7]
sorted_numbers = sorted(numbers, reverse=True)
print(sorted_numbers)

输出结果:

[9, 7, 5, 2, 1]

示例3:对字符串列表按照字符串长度进行排序

fruits = ['apple', 'banana', 'cherry', 'durian']
sorted_fruits = sorted(fruits, key=len)
print(sorted_fruits)

输出结果:

['apple', 'durian', 'cherry', 'banana']

示例4:对字典列表按照字典的某个键进行排序

students = [{'name': 'Alice', 'age': 18}, {'name': 'Bob', 'age': 17}, {'name': 'Charlie', 'age': 19}]
sorted_students = sorted(students, key=lambda x: x['age'])
print(sorted_students)

输出结果:

[{'name': 'Bob', 'age': 17}, {'name': 'Alice', 'age': 18}, {'name': 'Charlie', 'age': 19}]

需要注意的是,sorted()函数会返回一个新的已排序的列表,而不是修改原始列表。如果需要对原始列表进行排序,可以使用列表的sort()方法。

numbers = [5, 2, 9, 1, 7]
numbers.sort()
print(numbers)

输出结果:

[1, 2, 5, 7, 9]

总结:

sorted()函数是Python内置的排序函数,用于对列表进行排序。它可以按照升序或降序对列表进行排序,并返回一个新的已排序的列表。使用sorted()函数时可以通过key参数指定排序的依据,也可以通过reverse参数指定排序的顺序。需要注意的是,sorted()函数返回新的已排序列表,不会修改原始列表。如果需要修改原始列表,可以使用列表的sort()方法。