【发布时间】:2017-06-15 04:56:33
【问题描述】:
我正在尝试将数组数组转换为哈希数组。有人可以尝试解释我在这里到底做错了什么吗?数组数组中的第一个数组成为散列的键。我可以获得返回一个哈希甚至三个相同哈希的方法。但我无法让它在最终数组中返回每个不同的新哈希。
table_data = [
["first_name", "last_name", "city", "state"],
["Elisabeth", "Gardenar", "Toledo", "OH"],
["Jamaal", "Du", "Sylvania", "OH"],
["Kathlyn", "Lavoie", "Maumee", "OH"]
]
def convert_table(table_array)
hash = {}
final_array = []
headers_array = table_array.shift
table_array.each_index do |x|
i = 0
until i == headers_array.length
hash[headers_array[i]] = table_array[x][i]
final_array << hash
i += 1
end
end
final_array
end
p convert_table(table_data)
#END GOAL
[ { "first_name" => "Elisabeth", "last_name" => "Gardenar", "city" => "Toledo", "state" => "OH" },
{ "first_name" => "Jamaal", "last_name" => "Du", "city" => "Sylvania", "state" => "OH" },
{ "first_name" => "Kathlyn", "last_name" => "Lavoie", "city" => "Maumee", "state" => "OH" }
【问题讨论】:
-
如果您确实会说英语,请阅读以下评论,您成功地永远忽略了它:我注意到您从不接受针对您的问题给出的答案。确保花一些时间检查您的问题并接受他们解决您问题的最佳答案。通过这种方式,您可以让社区知道问题已解决,同时您奖励提供解决方案的人的努力。要接受答案,请查看答案分数下的复选标记。
-
未提供 MCVE,未说明任何问题。投反对票。
-
我说英语。我不熟悉这个网站的运作方式。现在我很熟悉,并且正在检查我的问题并选择正确的答案。我看到了这样做的价值和必要性。无需尝试和侮辱。如果您想对语法挑剔,我会改写“永远成功地忽略”。 “成功”是现在时。这是你可以携带你的陈述的最远距离。 “永远”是行不通的。下次你问是否有人会说英语时,请忽略那部分。在问这个问题时,使用非常清晰的英语非常重要......永远(呵呵)