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

Python中的Sorted函数:如何使用以及示例

发布时间:2023-07-03 19:43:20

在Python中,你可以使用sorted()函数来对序列进行排序。sorted()函数会返回一个新的已排序的列表,而不会对原始列表进行修改。

sorted()函数的语法如下:

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

其中,iterable是需要排序的可迭代对象,如列表、元组、字符串等。key是一个可选的参数,用于指定一个函数,该函数将应用于每个元素以进行排序。reverse也是一个可选参数,如果为True,则会进行降序排序,默认为False,即进行升序排序。

下面是几个使用sorted()函数的示例:

### 示例一:对一个列表进行排序

numbers = [5, 2, 8, 1, 9, 3]
sorted_numbers = sorted(numbers)
print(sorted_numbers)  # 输出:[1, 2, 3, 5, 8, 9]

### 示例二:对一个字符串进行排序

text = "hello"
sorted_text = sorted(text)
print(sorted_text)  # 输出:['e', 'h', 'l', 'l', 'o']

### 示例三:对一个元组进行排序

names = ("Alice", "Bob", "Charlie", "Dave")
sorted_names = sorted(names)
print(sorted_names)  # 输出:['Alice', 'Bob', 'Charlie', 'Dave']

### 示例四:使用自定义的排序函数

students = [
    {"name": "Alice", "age": 20},
    {"name": "Bob", "age": 19},
    {"name": "Charlie", "age": 22},
    {"name": "Dave", "age": 18}
]

# 按照年龄进行排序
def sort_by_age(student):
    return student["age"]

sorted_students = sorted(students, key=sort_by_age)
print(sorted_students)
# 输出:[{'name': 'Dave', 'age': 18}, {'name': 'Bob', 'age': 19}, {'name': 'Alice', 'age': 20}, {'name': 'Charlie', 'age': 22}]

### 示例五:进行降序排序

numbers = [5, 2, 8, 1, 9, 3]
sorted_numbers = sorted(numbers, reverse=True)
print(sorted_numbers)  # 输出:[9, 8, 5, 3, 2, 1]

以上是几个常见的用法示例。sorted()函数还支持其他参数和用法,可以根据具体需求进行使用。