#!/usr/bin/perl use strict; use warnings; my %hash; my @pairs = qw(1 canada 1 us 2 england 3 france 3 russia); while ( @pairs ) { my $key = shift @pairs; my $val = shift @pairs; push @{ $hash{$key} } , $val; } for ( sort keys %hash ) { print "$_ # ", join ', ' , @{ $hash{$_} }; print "\n"; } __END__ 1 # canada, us 2 # england 3 # france, russia