X-FeedAbuse: http://nntpfeed.proxad.net/abuse.pl feeded by 88.191.16.109 Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!news.dougwise.org!nntpfeed.proxad.net!nospam.fr.eu.org!talisker.lacave.net!lacave.net!not-for-mail From: jake kaiden Newsgroups: comp.lang.ruby Subject: Re: Help on hashing multiple keys and values Date: Wed, 13 Apr 2011 18:59:45 -0500 Organization: Service de news de lacave.net Lines: 36 Message-ID: References: NNTP-Posting-Host: bristol.highgroove.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Trace: talisker.lacave.net 1302742049 53682 65.111.164.187 (14 Apr 2011 00:47:29 GMT) X-Complaints-To: abuse@lacave.net NNTP-Posting-Date: Thu, 14 Apr 2011 00:47:29 +0000 (UTC) In-Reply-To: X-Received-From: This message has been automatically forwarded from the ruby-talk mailing list by a gateway at comp.lang.ruby. If it is SPAM, it did not originate at comp.lang.ruby. Please report the original sender, and not us. Thanks! For more details about this gateway, please visit: http://blog.grayproductions.net/categories/the_gateway X-Mail-Count: 381479 X-Ml-Name: ruby-talk X-Rubymirror: Yes X-Ruby-Talk: Xref: x330-a1.tempe.blueboxinc.net comp.lang.ruby:2802 Adam Adam wrote in post #992620: > I'm trying to create a hash with multiple values per key from a tab > delimited file. numbers_and_colors.txt example: > >The idiom I use is to add an array to hold the values, like this: >(name_hash[key] ||= []) << value hi adam - i do what clifford does, but since i'm thick-headed i do it a bit more verbosely (is that a word?)... foo = Hash.new{|key, value| key[value] = []} this sets up a hash, where each key's value is an array (you can also get all crazy, and make each value a hash...) once you've got that set, play around with this kind of stuff... foo ["rays"] = %W[alpha beta gamma] foo ["planets"] = %W[mercury venus earth mars] foo ["colors"] = %W[red orange yellow green blue indigo violet] p foo p foo.length p foo ["rays"][1] p foo ["planets"][-1] p foo ["colors"].length - j -- Posted via http://www.ruby-forum.com/.