python技巧 使用值来排序一个字典
In [8]: a={'x':11,'y':22,'c':4}
In [9]: import operator
In [10]: sorted(a.items(),key=operator.itemgetter(1))
Out[10]: [('c', 4), ('x', 11), ('y', 22)]
In [11]: a={'x':11,'y':22,'c':4}
In [12]: sorted(a.items(),key=lambda x:x[1])
Out[12]: [('c', 4), ('x', 11), ('y', 22)]
sort
方法会就地排序列表,不会把原列表复制一份
sorted 会新建一个列表作为返回值,接受任何形式的可迭代对象作为参数
sorted 和 sort的可选参数:
reverse 默认为False,如果设置为True则降序排列
key 这个是一个只有一个参数的函数,会应用到序列中的每一个元素上,如果key=len,就会按照字符串的长度排序