如果我有3个或更多阵列我想组合成一个,我该如何在ruby中做到这一点?这会是拉链的变化吗?
例如,我有
a = [1, 2, 3]
b = [4, 5, 6]
c = [7, 8, 9]
我希望有一个看起来像
的数组 [[1, 4, 7], [2, 5, 8], [3, 6, 9]]
答案 0 :(得分:6)
[a,b,c].transpose
就是你所需要的。我更喜欢50%的时间zip
。
答案 1 :(得分:2)
我会使用Array#zip,如下所示:
a = [1, 2, 3]
b = [4, 5, 6]
c = [7, 8, 9]
a.zip(b, c)
#=> [[1, 4, 7], [2, 5, 8], [3, 6, 9]]