sort,sorted的区别,sorted与operator.itemgetter使用
作者:互联网
1、sort,sorted的区别:都是排序函数,sort用于list,而sorted用于list或者iterable(可迭代对象)
2、operator.itemgetter(k)的使用:
operator模块提供的itemgetter(k)函数用来获取对象的索引为k的数据,比如:
a = [2, 6, 3, 7]
b = operator.itemgetter(1)
print(b(a))
6
3、函数sorted(iterable, key, reverse):
iterable可以是list,或者iterable
key是一个函数,用于决定比较iterable中哪一列的值来排序
reverse决定排序是倒序还是顺序,reverse=True为倒序,reverse=False为顺序,默认为顺序
4、将operator.itemgetter(k)函数用与sorted函数的参数key:
比如:让dict按照value顺序排序:
a = {'a': 8, 'b':4, 'c':7}
b = sorted(a.items(), key=operator.itemgetter(1))
print(b)
[('b', 4), ('c', 7), ('a', 8)]
让dict按照key倒序排序:
a = {'d': 8, 'b':4, 'c':7}
b = sorted(a.items(), key=operator.itemgetter(0), reverse=True)
print(b)
[('d', 8), ('c', 7), ('b', 4)]
标签:sort,reverse,itemgetter,key,operator,sorted,iterable 来源: https://blog.csdn.net/weixin_42719089/article/details/110789338