【发布时间】:2016-09-03 10:42:01
【问题描述】:
我有一个这样的哈希。
h = {"name"=>"United States House of Representatives TX-21",
"divisionId"=>"ocd-division/country:us/state:tx/cd:21",
"levels"=>["country"],
"roles"=>["legislatorLowerBody"],
"officials"=>[{"name"=>"Lamar Smith",
"address"=>[
{"line1"=>"2409 rayburn house office building",
"city"=>"washington",
"state"=>"DC",
"zip"=>"20515"
}
],
"party"=>"Republican",
"phones"=>["(202) 225-4236"],
"urls"=>["http://lamarsmith.house.gov/"],
"photoUrl"=>"http://...",
"channels"=>[
{"type"=>"Facebook", "id"=>"LamarSmithTX21"},
{"type"=>"Twitter", "id"=>"LamarSmithTX21"},
{"type"=>"YouTube", "id"=>"lamarsmithtexas21"}
]
}
]
}
我正在尝试执行 if 语句,如果 levels 哈希 == country,则将此数组推送到另一个名为 @nationalOffices 的数组中。问题是级别哈希的值是一个数组。我不知道该怎么做。任何建议将不胜感激。
【问题讨论】:
-
我重新格式化了你的哈希(不是数组),以便可以理解,但我对你的最后一段没有做任何事情,因为我不明白。当你举一个例子时,你应该做三件事: 1. 把例子的大小减少到最小的,以表明你的观点; 2. 显示您预期或期望的输出;和 3. 为每个输入对象分配一个变量(例如,
h = { ... },就像我在上面所做的那样),以便读者可以在答案和 cmets 中引用这些变量(这里是h),而无需定义它们。 -
您在这里以令人困惑的方式使用单词数组。这是数组中许多的哈希值吗?当您说“将这个数组推入另一个数组”时,您的意思是将这个 hash 推入
@nationalOffices吗?提供有关您正在使用的实际数据的更多背景信息。
标签: arrays ruby loops hash iteration