operator.itermgetter() (Python)

从这个名字就可以看出,这个函数在 operator 库中
同时,这是个”项拿到器”(我个人认为这个翻译做到了 信emmmm(别讲什么信达雅了emmm))
就是这个东西是一个项的生成器(准确说是个函数)。
可以通过这个东西,自定一个从一堆东西中找到对应项的那个函数

看完例子就很清楚了

import operator
b = operator.itemgetter(2)
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(b(a))

输出结果是:
3
//=========
在上面 b 是一个函数实体。
然后a是一个列表。
返回值就是第二项(从0 开始计数)
//=========
说明原函数(b)得到的函数实体就是一个返回第2个元素的函数实体

同样的例子还有,可以结合起来理解

import operator
b = operator.itemgetter(1, 2)
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(b(a))

输出结果是:
(2, 3)

import operator
b = operator.itemgetter(2, 1)
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(b(a))

输出的结果是
(3, 2)

import operator
b = operator.itemgetter(1, 2, 3)
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(b(a))

输出结果是:
(2, 3, 4)

等等…..
相信看完上面的例子之后,很快就能理解这个东西的意思了
在本质上,这个东西跟一个隐函数实体很像(虽然功能上侧重点不一样)

import operator
b = operator.itemgetter(1)
a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print(b(a))
c = lambda x: x[1]
print(c(a))

这个代码输出的结果是
2
2
看到这,是不是就理解的差不多了?(如果不是,就再看一遍emmm)

如果觉得这个对你有用,就点个赞支持下吧!–Sean

你可能感兴趣的:(简单题,计算机基础,Python)