У меня есть хэш, скажем, 20 значений.Итерировать через значения хеша в perl
Он инициализируется таким образом:
my $line = $_[0]->[0];
foreach my $value ($line) {
print $value;
}
Теперь, когда я пытаюсь получить значение каждого хэша в $ строке говорится: Использования неинициализированного значения в печати на file.pl линии 89
Есть ли способ итерации через каждое значение хэша?
Я также пробовал с:
my %line = $_[0]->[0];
foreach my $key (keys %line) {
print %line->{$key};
}
Но это тоже не работает: Ссылка нашел где список даже размера ожидается в file.pl в строке 89
Кто-нибудь знает, что делать? Это не должно быть так сложно ...
Я смущен. Конечно, мне кажется, что вы инициализировали скаляр, а не хэш. – Cascabel
И в вашем втором примере вы пытаетесь сделать его хешем, но вы по-прежнему назначаете скаляр - может быть, это хэш ref? – Cascabel
Используйте отладчик Perl и распечатайте свой список arglist с помощью команды 'x'. – tchrist