1、打开Python开发工具IDLE,新建‘衡痕贤伎sorted.py’并写代码如下:a = [1,5,0,6,7]print (a)a.sort(像粜杵泳)print (a)b = [1,8,9,3,2]print (b)print (sorted(b))print (b)a列表调用sort()改变了a列表sorted()函数中传入b列表,返回排好序的列表,但是b列表本身不改变
2、F5运行程序,打印结果如下:[1, 5, 0, 6, 7][0, 1, 5, 6, 7][1, 8, 9, 3, 2][1, 2, 3, 8, 9][1, 8, 9, 3, 2]
3、Python3的sort函数有两个个参数,第一个key是用来进行比士嫣轶嗄较的元素,只有一个参数,函数的参数就是取自于可迭代对象中,通过这个元素恝依在绌来排序。第二resverse是用来指定是否反转。改写代码如下:list1 = [[1,2],[1,0],[5,1]]def f1(x): return x[1]list1.sort(key=f1)print (list1) sorted函数也是一样,只是把list等可迭代对象,写在了第一个参数。不改变原对象的内容
4、F5运行程序,打印出根据嵌套列表第二个值大小排序的列表[[1, 0], [5, 1], [1, 2]]
5、再写一个复杂一点,通过lambda表达式方式给key赋值。代码如下:dict1 ={1:2,'3':0,'a':1}print (sorted(dict1.items(),key=lambda x:x[1]))
6、F5运行程序,字典根据value排序成功[('3', 0), ('a', 1), (1, 2)]