$ perl -MData::Dumper -e ' %h1=(3 => 1, 5 => 1, 10 => 3 ); @l=%h2=reverse %h1; print Dumper \@l,\%h2' $VAR1 = [ 1, '5', 3, '10' ]; $VAR2 = { '3' => '10', '1' => '5' }; $ perl -MData::Dumper -e ' %h1=(3 => 1, 5 => 1, 10 => 3 ); %h4=%h3=%h2=reverse %h1; print Dumper \%h2,\%h3,\%h4' $VAR1 = { '1' => '5', '3' => '10' }; $VAR2 = { '1' => '5', '3' => '10' }; $VAR3 = { '3' => '10', '1' => '5' };