gpt4 book ai didi

python - lambda 的可能替代品以访问数组中的项目

转载 作者:太空宇宙 更新时间:2023-11-04 10:33:38 25 4
gpt4 key购买 nike

我想我前几天看到了一个内置函数的帖子:

def itemAt(index):
def accessItem(item):
return item[index]
return accessItem

它被用于 map 之类的东西。例如,要从列表列表中的每个列表中获取第一个元素,您可以这样做:

map(itemAt(0), list_of_lists)

我可能只是在想象,但是有没有一个内置函数可以做类似的事情,这样我就可以避免使用 lambda 语法:

map(lambda x: x[0], list_of_lists)

正如我所说,这可能完全是一个梦,但我也“记得”看到类似这样的属性而不是索引。

最佳答案

您正在寻找operator.itemgetter() , 和 operator.attrgetter()对于属性。

引用文档:

operator.attrgetter(attr)
operator.attrgetter(*attrs)

Return a callable object that fetches attr from its operand. If more than one attribute is requested, returns a tuple of attributes. The attribute names can also contain dots.

[...]

operator.itemgetter(item)
operator.itemgetter(*items)

Return a callable object that fetches item from its operand using the operand’s __getitem__() method. If multiple items are specified, returns a tuple of lookup values.

关于python - lambda 的可能替代品以访问数组中的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24871588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com