循環在具有特定鍵值對的文本文件上運行三次。每個循環都會返回一個新的哈希,它將打印在下面我想將這些散列存儲到另一個散列中。 group1
,group2
和group3
是哈希鍵:無法在Ruby中創建散列哈希
"group1"
{
"path"=>"/tmp/",
"max_hits"=>262144,
"min_hits"=>5240
}
"group2"
{
"basic_size_limit"=>262144,
"path"=> "/usr/bin/ruby",
"max_hits"=>2412,
"min_hits"=>871
}
"group3"
{
"path"=>"/usr/tmp/",
"basic_time_limits"=>[26214400, 26214401, 26214402],
}
我初始化上述哈希作爲groups = Hash.new
,而不是我想將它們存儲到哈希散列。我想初始化更大的哈希像group_of_groups = Hash.new{|hash, key| hash[key] = Hash.new}
。
group_of_groups = Hash.new{|hash, key| hash[key] = Hash.new}
Loop i in 1 .. 3
groups = Hash.new
####
Do something and add to the hash groups
####
key_name = "group" + i
group_of_groups[key_name] = groups
end Loop
但它只是給了我{"group1"=>{}, "group2"=>{}, "group3"=>{}}
如何解決這個問題?
目前還不清楚重視你已經離開。個人散列中的3個羣體是否是變量?請編輯以顯示更多真實的Ruby代碼並展示這3個哈希的源代碼(我也看到''path'=「/ usr/bin/ruby」'帶有不正確的運算符'='而不是'=>') –
這些是我印刷的三種不同的哈希值。我糾正了'='n'=>'的錯誤。我在這裏提供更多信息 –
我明白它們是3種不同的哈希值,但它們是以變量存儲的,還是以Array的形式存儲? –