博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中的operator.itemgetter函数
阅读量:4591 次
发布时间:2019-06-09

本文共 970 字,大约阅读时间需要 3 分钟。

operator.itemgetter函数

operator模块提供的itemgetter函数用于获取对象的哪些维的数据,参数为一些序号。看下面的例子

a = [1,2,3] >>> b=operator.itemgetter(1)      //定义函数b,获取对象的第1个域的值>>> b(a) 2>>> b=operator.itemgetter(1,0)  //定义函数b,获取对象的第1个域和第0个的值>>> b(a) (2, 1)

 

要注意,operator.itemgetter函数获取的不是值,而是定义了一个函数,通过该函数作用到对象上才能获取值。

sorted函数用来排序,sorted(iterable[, cmp[, key[, reverse]]])

其中key的参数为一个函数或者lambda函数。所以itemgetter可以用来当key的参数

a = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10)]

根据第二个域和第三个域进行排序

sorted(students, key=operator.itemgetter(1,2))

 

  • 用 operator 函数进行多级排序
students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]  >>> sorted(students, key=itemgetter(1,2))  # sort by grade then by age  [('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]  ## 对字典排序>>> d = {
'data1':3, 'data2':1, 'data3':2, 'data4':4} >>> sorted(d.iteritems(), key=itemgetter(1), reverse=True) [('data4', 4), ('data1', 3), ('data3', 2), ('data2', 1)]

 

 

转载于:https://www.cnblogs.com/baobaotql/p/10780572.html

你可能感兴趣的文章
html5 Canvas绘制时钟以及绘制运动的圆
查看>>
Unity3D热更新之LuaFramework篇[05]--Lua脚本调用c#以及如何在Lua中使用Dotween
查看>>
JavaScript空判断
查看>>
洛谷 P1439 【模板】最长公共子序列(DP,LIS?)
查看>>
python timeit
查看>>
Wireless Network 并查集
查看>>
51nod 1019 逆序数
查看>>
ubuntu 16 64位编译安装php
查看>>
架构之美01
查看>>
Web负载均衡
查看>>
SQL Server用表组织数据
查看>>
连接H3C交换机的Console口连不上
查看>>
test
查看>>
事件捕获与冒泡的再探
查看>>
easyUI文本框获得焦点,失去焦点
查看>>
Mariadb安装
查看>>
Java的native方法
查看>>
php_l3arning_notes_0
查看>>
在GROUP BY中"做文章"(五种中简答方法!)
查看>>
基础html页面结构
查看>>