gpt4 book ai didi

javascript - JavaScript 的 Array.prototype.some/every 的 python 等价物是什么?

转载 作者:太空狗 更新时间:2023-10-29 17:30:16 25 4
gpt4 key购买 nike

python 是否有与 JavaScript 的 Array.prototype.some 等价的东西?/every

简单的 JavaScript 示例:

var arr = [ "a", "b", "c" ];
arr.some(function (element, index) {
console.log("index: " + index + ", element: " + element)
if(element === "b"){
return true;
}
});

将输出:

index: 0, element: a
index: 1, element: b

下面的python似乎在功能上是等价的,但我不知道是否有更“pythonic”的方法。

arr = [ "a", "b", "c" ]
for index, element in enumerate(arr):
print("index: %i, element: %s" % (index, element))
if element == "b":
break

最佳答案

Python 有all(iterable)any(iterable)。因此,如果您制作了一个生成器或迭代器来执行您想要的操作,则可以使用这些函数对其进行测试。例如:

some_is_b = any(x == 'b' for x in ary)
all_are_b = all(x == 'b' for x in ary)

它们实际上是在the documentation中定义的通过他们的代码等价物。这看起来很眼熟吗?

def any(iterable):
for element in iterable:
if element:
return True
return False

关于javascript - JavaScript 的 Array.prototype.some/every 的 python 等价物是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25488148/

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