Beefy Boxes and Bandwidth Generously Provided by pair Networks
Welcome to the Monastery
 
PerlMonks  

Re: Having a problem creating a hash with the map function

by Kenosis (Priest)
on Nov 29, 2012 at 17:03 UTC ( #1006304=note: print w/ replies, xml ) Need Help??


in reply to Having a problem creating a hash with the map function

# This is the goal #%Belfast_car_dealer_hash = ("Toyota"=> 1, # "Chrysler" => 1); # "Ford" => 1);

The following will initialize your hash the way you want:

my %Belfast_car_dealer_hash = map { $_ => 1 } @dealers[1,3,4];

Dumper output of %Belfast_car_dealer_hash:

$VAR1 = { 'Chrysler' => 1, 'Toyota' => 1, 'Ford' => 1 };

Update: Added [1,3,4] to limit key creation.

My apologies; I believe I've misunderstood. What about using a hash of arrays, where the key is the city and the value is a reference to an array of dealers? Perhaps this data structure would be helpful:

use strict; use warnings; my @dealers = ( "Nissan", "Toyota", "Tesla", "Chrysler", "Ford", "Gene +ral Motors" ); my %citiesDealers = ( 'Belfast' => [ @dealers[ 1, 3, 4 ] ], 'Dublin' => [ @dealers[ 2, 3, 0 ] ], 'Cork' => [ @dealers[ 0, 3 ] ], 'Derry' => [ @dealers[ 1, 4, 2 ] ], 'Tralee' => [ @dealers[ 2, 1, 0, 5 ] ] ); print $_, "\n" for @{ $citiesDealers{'Belfast'} };

Output:

Toyota Chrysler Ford


Comment on Re: Having a problem creating a hash with the map function
Select or Download Code

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1006304]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (6)
As of 2014-12-27 22:42 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (177 votes), past polls