gpt4 book ai didi

ruby - 返回数组作为 2 个元素的数组而不是 4 个 ruby

转载 作者:数据小太阳 更新时间:2023-10-29 07:50:31 26 4
gpt4 key购买 nike

我在一个数组上有一个简单的 each 语句

game.each{|match|  winner += rps_game_winner(match) 

winner 之前定义为 winner = []

rps_game_winner 将返回一个包含 2 个元素的数组。我希望获胜者是 2 元素数组的数组。相反,如果游戏有 2 个匹配项,我将获得一个包含 4 个元素的数组。

有没有办法快速将一个包含 4 个元素的数组转换为包含两个包含 2 个元素的数组的数组。或者首先让 winners 成为一个包含 2 个元素的数组

例如获胜者应该等于 [["rob","Hi"],["sally","no"]] 而不是 ["rob","Hi","sally","no"]

最佳答案

不要使用 += ;使用 << :

game.each{|match| winner << rps_game_winner(match)}

同时 +将两个数组合二为一,<<添加新元素。如果一个新元素恰好本身是另一个数组,它仍然作为一个元素添加,而不是合并。

如果你喜欢单词而不是标点符号,你也可以拼写push :

game.each do |match| winner.push(rps_game_winner match) end

关于ruby - 返回数组作为 2 个元素的数组而不是 4 个 ruby,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12887430/

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