#coding:utf-8 #求列表的第二大值 list_test =[6,2,4,6,1,2,3,4,5] list_test.sort() print list_test[-2] """6""" help(list_test.sort) """Help on built-in function sort: sort(...) L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*; cmp(x, y) -> -1, 0, 1""" #numbers逆序,出现在group中放到前面 numbers = [8,3,1,2,5,4,7,6] group = [6,3,4,7] def sort_priority(values, group): """给values进行逆序,若出在grop组,放在前面""" def helper(x): if x in group: return (0, x) return (1, x) values.sort(key=helper, reverse=True) sort_priority(numbers, group) print numbers """[8, 5, 2, 1, 7, 6, 4, 3]""" #按字典中的年龄升序排 dict_test =[{"name":"shihongguang","age":70},{"name":"shihongbo","age":20},{"name":"maodongjiao","age":26}] def sort_dict(values): """按字典中的年龄进行排序""" def helper(x): return(x["age"],x) values.sort(key=helper) sort_dict(dict_test) print dict_test """[{'age': 20, 'name': 'shihongbo'}, {'age': 26, 'name': 'maodongjiao'}, {'age': 70, 'name': 'shihongguang'}]"""