sorted的key是什么
时间: 2023-10-07 20:12:27 浏览: 51
在Python中,`sorted()`函数是用于对可迭代对象进行排序的内置函数。`sorted()`函数可以接受一个可迭代对象作为参数,并返回一个新的已排序的列表。
`sorted()`函数还可以使用 `key` 参数来指定一个可调用对象,这个可调用对象用于从每个元素中提取一个键(key),并根据这个键对元素进行排序。也就是说,`key` 参数允许我们自定义排序的规则。
`key` 参数是一个函数或Lambda表达式,它接受可迭代对象的每个元素作为输入,并返回一个用于排序的键。这个键可以是任何可比较的类型,例如整数、字符串、元组等。`sorted()`函数将根据这个键对元素进行排序。
下面是一个示例,展示如何使用 `key` 参数对列表进行排序:
```python
fruits = ['apple', 'banana', 'cherry', 'date']
sorted_fruits = sorted(fruits, key=lambda x: len(x))
print(sorted_fruits) # 输出: ['date', 'apple', 'banana', 'cherry']
```
在这个例子中,我们使用 `lambda` 表达式作为 `key` 参数来指定排序规则。`lambda x: len(x)` 表示提取每个水果的长度作为排序的依据。因此,列表将按照水果名称的长度进行升序排序。最后打印出排序后的列表 `sorted_fruits`。
需要注意的是,`key` 参数的可调用对象应返回一个用于排序的键,而不是直接对元素进行排序。`sorted()`函数将根据这些键对元素进行排序,并返回排序后的结果。
阅读全文