sort函数参数
时间: 2023-07-05 13:13:46 浏览: 90
Python中的sort()函数有几个可选参数,可以用来控制排序的方式和顺序。
1. reverse:是否降序排序,默认为False(升序排序)。
```python
list1 = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
list1.sort(reverse=True) # 降序排序
print(list1)
```
2. key:用于指定一个函数,用来从每个元素中提取一个用于排序的关键字。默认为None,此时按照元素本身进行排序。
```python
# 按照字符串长度进行排序
list2 = ['abc', 'a', 'ab', 'abcd', 'ab']
list2.sort(key=len)
print(list2)
# 按照字符串中第二个字符进行排序
list3 = ['abc', 'a', 'ab', 'abcd', 'ab']
list3.sort(key=lambda x: x[1])
print(list3)
```
3. cmp:此参数在Python 3中已经被废弃。在Python 2中,它是一个用于比较两个元素的函数,返回值为-1、0或1,分别表示小于、等于、大于。默认为None,此时使用默认的比较函数。
```python
# Python 2中的使用示例
def cmp_func(x, y):
if x < y:
return -1
elif x > y:
return 1
else:
return 0
list4 = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
list4.sort(cmp=cmp_func)
print(list4)
```
阅读全文