我试图从ruby数据文件中获取数据列表。我有这样的代码:
us_cities = {:city => 'Lewisville', 'Florida', 'Angeles'}
我正在做自学,我试图减少记忆。但是当我按下回车按钮时,我收到一条错误消息。我想这样做:us_cities[:city]
我得到了城市名单。我是以正确的方式去做的吗?
如果您可以使用文档参考回答,那么我可以阅读将是可爱的。谢谢!
答案 0 :(得分:3)
Hash
对象包含key-vaue对的列表,其中每个键值对用逗号(,
)分隔。你的那个是错误的,而不是如下:
us_cities = {:city => ['Lewisville', 'Florida', 'Angeles']}
us_cities[:city] # => ['Lewisville', 'Florida', 'Angeles']
Hash
是一个类似字典的唯一键及其值的集合。也称为关联数组,它们类似于数组,但是当数组使用整数作为索引时,哈希允许您使用任何对象类型。哈希按照插入相应键的顺序枚举它们的值。
我创建了一个us_cities
哈希,它有一个密钥:city
,该密钥的值是一个Array对象,它包含所有城市名称列表。现在要获取该密钥:city
的值,我们需要使用Hash#[]
(正如我们在此处所做的那样us_cities[:city]
)。