sorted函数
sorted函数基本语法
sorted(iterable, key=None, reverse=False)
reserve改变排序顺序 输入值为True,False
key决定了排序规则
其中python3中取消了cmp函数,可以引用functiontools库中的工具(转载:python3中sorted函数里关于cmp这一参数的改变 - Z_Agent - 博客园 (cnblogs.com))
例如:
import functools #引用函数库 def key1(x,y): #自定义一组排序规则 a=x[0] b=y[0] if a > b : return 1 elif a < b : return -1 else: return 0 #cmp函数的返回值只有1,-1,0 L = [(2,1),(1,2),(3,3),(4,4)] L=sorted(L,key = functools.cmp_to_key(key1)) #python3中cmp的引用方式 print(L)
输出结果为:[(1, 2), (2, 1), (3, 3), (4, 4)]
另外当规则不复杂时可以使用lambda匿名函数
如:
L = [(2,1),(1,2),(3,3),(4,4)] L=sorted(L,key=lambda x:x[0]-x[1]) #lambda为匿名函数形式,使用方法为(lambda 参数变量 : 函数规则) print(L)
输出结果为:[(1, 2), (3, 3), (4, 4), (2, 1)]