new set is read from a file while ($line <>){ ($key,$value)=split(/,/,$line); #suppose #line have 23,['g8',23,45] push @{$numbers{23}},$value; }