in reply to Multiple Values for a Key

You can not assign multiply values to a key, but you can use array references

%hash = ("1" => ["canada", "us"], "2" => ["england"], "3" => ["france", "russia"]); print "$_ # ", join(", ", @{$hash{$_}}), "\n" foreach keys %hash;