my %newhash; for my $href (@data_list){ $newhash{ $href->{key} } = $href->{value}; } ## If you want to print the new hash ... for my $k (sort keys %newhash){ print "$k => $newhash{$k}\n"; }