描述
sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。
语法
sort()方法语法:
list.sort( key=None, reverse=False)
参数
- key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
- reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
以下是关于`sort()`方法的基本用法:
### 默认用法
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort()
print(my_list)
```
输出:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
### 降序排序
```python
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
my_list.sort(reverse=True)
print(my_list)
```
输出:
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
### 自定义排序规则
```python
def custom_sort(x):
return x % 3
my_list = [12, 8, 15, 3, 10, 5]
my_list.sort(key=custom_sort)
print(my_list)
```
输出:
[15, 3, 12, 5, 10, 8]
通过指定`key`参数,可以传入一个函数来实现自定义排序规则。
### 对字典的排序
```python
my_dict = {'pear': 5, 'apple': 7, 'orange': 3}
sorted_dict = dict(sorted(my_dict.items(), key=lambda x: x[1]))
print(sorted_dict)
```
输出:
{'orange': 3, 'pear': 5, 'apple': 7}
使用`sorted()`函数对字典进行排序后,以字典形式重新构建。
aList = ['Google', 'Runoob', 'Taobao', 'Facebook']
aList.sort()
print("List : ", aList)
以下实例降序输出列表:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 列表
vowels = ['e', 'a', 'u', 'o', 'i']
# 降序
vowels.sort(reverse=True)
# 输出结果
print ( '降序输出:', vowels )
以下实例演示了通过指定列表中的元素排序来输出列表:
#!/usr/bin/python
# 获取列表的第二个元素
def takeSecond(elem):
return elem[1]
# 列表
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
# 指定第二个元素排序
random.sort(key=takeSecond)
# 输出类别
print ('排序列表:', random)