@TOC
sort()
-
描述
sort() 函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。 -
语法
list.sort( key=None, reverse=False)
-
参数
key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。 reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。
-
返回值
该方法没有返回值,但是会对列表的对象进行排序。
示例:
aList = ['Google', 'Runoob', 'Taobao', 'Facebook']
aList.sort()
print("List : ", aList)
vowels = ['e', 'a', 'u', 'o', 'i']
vowels.sort(reverse=True)
print('降序输出vowels:', vowels)
def takeSecond(elem):
return elem[1]
random = [(2, 2), (3, 4), (4, 1), (1, 3)]
random.sort(key=takeSecond)
print('排序列表random:', random)
结果:
List : ['Facebook', 'Google', 'Runoob', 'Taobao']
降序输出vowels: ['u', 'o', 'i', 'e', 'a']
排序列表random: [(4, 1), (2, 2), (1, 3), (3, 4)]
标题sorted()
-
sort 与 sorted 区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。 list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。
-
语法
sorted(iterable, key=None, reverse=False)
-
参数
iterable -- 可迭代对象。 key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。 reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
-
返回值
返回重新排序的列表
示例:
aList = [5, 2, 3, 1, 4]
print(sorted(aList))
bDict = {1: 'D', 2: 'B', 3: 'B', 4: 'E', 5: 'A'}
print(sorted(bDict))
# 利用key进行倒序排序
def f(x):
return x * -1
example_list = [5, 0, 6, 1, 2, 7, 3, 4]
result_list = sorted(example_list, key=f)
print("result_list:", result_list)
# 要进行反向排序,也通过传入第三个参数 reverse=True
result_list2 = sorted(example_list, reverse=True)
print("result_list2:", result_list2)
结果:
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
result_list: [7, 6, 5, 4, 3, 2, 1, 0]
result_list2: [7, 6, 5, 4, 3, 2, 1, 0]