首页 > 精选问答 >

问 python中的sorted函数

2025-11-17 14:00:42
最佳答案

答

【python中的sorted函数】在Python中,`sorted()` 是一个非常常用且功能强大的内置函数,用于对可迭代对象进行排序。它能够处理列表、元组、字符串等数据类型,并返回一个新的已排序的列表,而不会改变原始数据。

一、函数简介

属性 说明
函数名 `sorted()`
功能 对可迭代对象进行排序,返回一个新的列表
是否修改原数据 否(原数据保持不变)
支持的数据类型 列表、元组、字符串、字典等
返回值 排序后的列表

二、基本用法

```python

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

```

- `iterable`:需要排序的可迭代对象。

- `key`:用于自定义排序规则的函数(如 `str.lower`)。

- `reverse`:是否降序排列(默认为 `False`,即升序)。

三、示例对比

示例 输出结果 说明
`sorted([3, 1, 2])` `[1, 2, 3]` 默认升序排序
`sorted([3, 1, 2], reverse=True)` `[3, 2, 1]` 降序排列
`sorted("cba")` `['a', 'b', 'c']` 字符串排序
`sorted((3, 1, 2))` `[1, 2, 3]` 元组排序
`sorted({"a": 3, "b": 1, "c": 2})` `['a', 'b', 'c']` 字典键排序

四、使用 `key` 参数

`key` 参数允许我们根据自定义规则来排序。例如,按字符串长度排序:

```python

sorted(["apple", "banana", "cherry"], key=len)

输出: ['apple', 'cherry', 'banana'

```

或者忽略大小写排序:

```python

sorted(["Banana", "apple", "Cherry"], key=str.lower)

输出: ['apple', 'Banana', 'Cherry'

```

五、注意事项

- `sorted()` 不会修改原始数据,而是返回一个新列表。

- 若需对列表进行原地排序,可以使用 `list.sort()` 方法。

- 对于复杂对象(如字典或类实例),可以通过 `key` 指定排序依据。

六、总结

特性 说明
功能 对任意可迭代对象进行排序
返回类型 新的列表
原始数据 不被修改
自定义排序 使用 `key` 参数
降序支持 通过 `reverse=True` 实现

`sorted()` 是Python中处理排序任务时非常灵活和高效的工具,掌握其使用方法有助于提升代码的可读性和效率。

免责声明:本答案或内容为用户上传,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。 如遇侵权请及时联系本站删除。