什么是Python的"zip"内置的Ruby等价物?

Eri*_*eth 16 ruby python translation

Python的内置zip函数有没有Ruby等价物?如果没有,做同样事情的简洁方法是什么?

一点上下文:当我试图找到一个干净的方法来检查涉及两个数组时,就会出现这种情况.如果我有zip,我可以写下这样的东西:

zip(a, b).all? {|pair| pair[0] === pair[1]}
Run Code Online (Sandbox Code Playgroud)

我也接受一种干净的方式,没有任何类似的东西zip("干净"意味着"没有明确的循环").

dgt*_*zed 26

Ruby有一个zip功能:

[1,2].zip([3,4]) => [[1,3],[2,4]]
Run Code Online (Sandbox Code Playgroud)

所以你的代码示例实际上是:

a.zip(b).all? {|pair| pair[0] === pair[1]}
Run Code Online (Sandbox Code Playgroud)

或者更简洁:

a.zip(b).all? {|a,b| a === b }
Run Code Online (Sandbox Code Playgroud)