Мне нужна помощь, чтобы выяснить, как приспособиться к ситуациям, в которых $ hash {$ i} загружается с массивом @headers разных размеров.использовать строгое;используйте предупреждения;
my $file = "list.csv";
open (FILE,"$file") || die "Can't open file: $!\n";
my (@lines) = <FILE>;
close(FILE);
my @headers = split(',',$lines[0]);#split up header line
my %hash;
for (my $i=1; $i < scalar(@lines); $i++)
{
my @strings = split(',',$lines[$i];
# NEED help here
$hash{$i} = {
$headers[0] => $strings[0],
$headers[1] => $strings[0],
$headers[2] => $strings[0],
$headers[3] => $strings[0],
$headers[4] => $strings[0],
$headers[5] => $strings[0]
};
}
Есть ли способ загрузить хэш по индексу для ситуаций, когда скаляр (@headers) = 5,6,7 ... и т. д.?Есть ли программный эквивалент для чего-то вроде ...
$hash{$i} = {
$headers[0] => $strings[0],
...
$headers[n] => $strings[n]
};
или
$hash{$i} = {@headers => @strings);