use strict; use warnings; my (%hash, @keys, @vals, $want); @keys = qw/a b c/; @vals = (1, 2, 3); @hash{@keys} = (@vals); $want = 'c'; print $hash{$want};