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

Python中sorted()函数用于排序序列

发布时间:2023-09-27 03:58:47

Python中的sorted()函数用于对可迭代对象进行排序,返回一个新的已排序列表,而不是修改原始对象。

sorted()函数可以用于排序各种类型的序列,包括数字、字母、字符串、元组、列表、字典等。

语法:

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

参数说明:

- iterable:可迭代对象,可以是一个序列或一个迭代器。

- key:用于指定排序的依据。可以是一个函数,或者是lambda表达式。该函数将被应用于每个元素上,并返回用于排序的值。默认值为None,表示按照元素的自然顺序排序。

- reverse:用于指定排序结果的顺序。默认值为False,表示升序排列。如果设置为True,则按降序排列。

示例代码:

1. 对数字进行排序:

nums = [5, 3, 8, 2, 9]

sorted_nums = sorted(nums)

print(sorted_nums)

# 输出:[2, 3, 5, 8, 9]

2. 对字符串进行排序:

words = ['cat', 'dog', 'apple', 'banana']

sorted_words = sorted(words)

print(sorted_words)

# 输出:['apple', 'banana', 'cat', 'dog']

3. 对元组进行排序:

points = [(1, 2), (4, 5), (2, 1), (3, 3)]

sorted_points = sorted(points)

print(sorted_points)

# 输出:[(1, 2), (2, 1), (3, 3), (4, 5)]

4. 指定排序的依据:

students = [('Tom', 18, 'A'), ('Bob', 16, 'B'), ('Alice', 17, 'A')]

sorted_students = sorted(students, key=lambda x: x[1])  # 按年龄排序

print(sorted_students)

# 输出:[('Bob', 16, 'B'), ('Alice', 17, 'A'), ('Tom', 18, 'A')]

5. 按降序排序:

nums = [5, 3, 8, 2, 9]

sorted_nums = sorted(nums, reverse=True)

print(sorted_nums)

# 输出:[9, 8, 5, 3, 2]

总结:

sorted()函数在Python中是一个非常有用的函数,它可以对可迭代对象进行排序,并返回一个新的已排序列表。通过指定key参数,可以按特定的规则进行排序。通过设置reverse参数,可以指定排序结果的顺序。使用sorted()函数可以极大地简化排序操作。