lanx@nc10-ubuntu:~$ perl -MData::Dumper -e ' %h1=(3 => 1, 5 => 1, 10 => 3 ); @l=%h2=reverse %h1; print Dumper \@l,\%h2' $VAR1 = [ 3, '10', 3, '10' ]; $VAR2 = { '1' => '3', '3' => '10' }; lanx@nc10-ubuntu:~$ perl -version This is perl, v5.10.0 built for i486-linux-gnu-thread-multi