Pythonitemgetter函数怎么用?

美女程序员鼓励师

Operator模块中也有一类函数可以作为条件过滤。

首先介绍 itemgetter 函数。假设定义了一个 f 函数,f = itemgetter(2),那么如果调用 f(r),实际会返回 r[2]。也就是说,传入的入参 r,最终返回的只是 r 的索引值为 2 (从 1 开始计算)那一部分。

itemgetter函数应用场景:根据tuple的某个字段对tuple列表排序。例如,有一段JSON格式的城市数据,需要按缩写方式排序:

from operator import itemgetter

 

metro_areas = [('Tokyo', 'JP', 36.933, (35.689722, 139.691667)), ('Delhi NCR', 'IN', 21.935, (28.613889, 77.208889)),

               ('Mexico City', 'MX', 20.142, (19.433333, -99.133333)),

               ('New York-Newark', 'US', 20.104, (40.808611, -74.020386)),

               ('Sao Paulo', 'BR', 19.649, (-23.547778, -46.635833)),

               ]

for city in sorted(metro_areas, key=itemgetter(1)):

    logging.info('city -> %s', city)

从分割来看,城市数据数组中的每个元素都是元组形式。itemgetter函数提取tuple的第二个值,作为sorted函数排序的基础。

以上就是Python itemgetter函数的使用,希望能对大家有所帮助!

以上是 Pythonitemgetter函数怎么用? 的全部内容, 来源链接: utcz.com/z/543376.html

回到顶部