my %samples = ( 'a' => [ [1, 2, 3, 4], [5, 6, 7, 8] ], 'b' => [ [1, 3, 5, 7], [2, 4, 6, 8] ] ); my $key; foreach $key (keys %samples) { my @set = @{$samples{$key}}; my @in = @{$set[0]}; my @out = @{$set[1]}; print "in: @in out: @out\n"; }