gpt4 book ai didi

ruby - 如何并行遍历多个数组?

转载 作者:数据小太阳 更新时间:2023-10-29 06:53:10 33 4
gpt4 key购买 nike

我有 4 个数组。

["one", "two", "three"]
["1", "2", "3"
["un", "deux", "trois"]
["ichi", "ni", "san"]

是否可以连接各自数组中的每个元素?

所以我最终得到了单行字符串,就像这样

"one, 1, un, ichi"\n
"two,2, deux,ni"\n

等等……

是否可以在一个循环中执行此操作?

for i in (1..array1.count)

puts array1[i] + ", " + array2[i] + ", " + array3[i] + ", " + array4[i]

end

当可能存在不可预测的数组数量并且每个数组大小不等时会发生什么?

最佳答案

简单:

a = [array1,array2,array3,array4] # or however many you have

puts a.transpose.map {|x| x.join(", ")}.join("\n")

这将适用于任意数量的子数组,只要它们的大小都相同(无论大小是多少)。

如果子数组的长度不同,但是使用第一个的长度就可以了,你可以这样做:

a[0].zip(*a[1..-1]).map {|x| x.join(", ")}.join("\n")

关于ruby - 如何并行遍历多个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1598483/

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