python中sorted
时间: 2024-05-05 13:22:49 浏览: 69
`sorted` 是 Python 内置的一个函数,用于对可迭代对象进行排序操作,返回一个新的已排序的列表。
`sorted` 可以接收多个参数,其中最常用的参数是要排序的可迭代对象和一个可选的关键字参数 `key`,用于指定排序的关键字。例如,对一个列表按照元素的绝对值进行排序:
```python
a = [-5, 3, 1, -4, 2]
sorted_a = sorted(a, key=abs)
print(sorted_a) # [1, 2, 3, -4, -5]
```
当可迭代对象是字典(`dict`)时,`sorted` 的默认行为是按照字典的键(`key`)进行排序。如果需要按照字典的值进行排序,可以使用 `dict.items()` 方法将字典转化为一个元素为 `(key, value)` 的可迭代对象,然后指定 `key` 参数为一个 lambda 表达式,例如:
```python
d = {'apple': 2, 'banana': 4, 'pear': 1, 'orange': 3}
sorted_d = sorted(d.items(), key=lambda x: x[1])
print(sorted_d) # [('pear', 1), ('apple', 2), ('orange', 3), ('banana', 4)]
```
除了 `key` 参数外,`sorted` 还支持其他可选参数,例如 `reverse` 参数用于指定是否按照倒序进行排序(默认为 `False`)。例如:
```python
a = [-5, 3, 1, -4, 2]
sorted_a_reverse = sorted(a, reverse=True)
print(sorted_a_reverse) # [3, 2, 1, -4, -5]
```
阅读全文