sha*_*und 13 javascript python arrays
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;
}
});
Run Code Online (Sandbox Code Playgroud)
将输出:
index: 0, element: a
index: 1, element: b
Run Code Online (Sandbox Code Playgroud)
下面的python似乎功能相同,但我不知道是否有更"pythonic"的方法.
arr = [ "a", "b", "c" ]
for index, element in enumerate(arr):
print("index: %i, element: %s" % (index, element))
if element == "b":
break
Run Code Online (Sandbox Code Playgroud)
Ama*_*dan 17
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)
Run Code Online (Sandbox Code Playgroud)
它们实际上是通过它们的代码等价物在文档中定义的.这看起来很熟悉吗?
def any(iterable):
for element in iterable:
if element:
return True
return False
Run Code Online (Sandbox Code Playgroud)