Для следующего фрагмента кода, является ли мое понимание $label = $classifier->{result}->{forcast}->[$i]->{label};
правильным?Как проанализировать этот хэш примера хэша?
1) результат используется как ключ для хэш-коррекции классификатора;
2) гнозировать используются в качестве ключа для хэша-иого долл классификатору -> {результат}
3) $ классификатора -> {результат} -> {прогнозировался} является исм в массив, и я -ное значение этого массива также является хеш-ссылкой
4) Метка является ключом хэш-ссылки $ classifier -> {result} -> {forcast} -> [$ i]. Соответствующее значение присваивается левой стороне метки $.
my $i=0;
while (<classifierinput>)
{
$label = $classifier->{result}->{forcast}->[$i]->{label};
$i++;
}
Как определяется определение классификатора? Что должен делать этот код? – Dave
Ваше понимание верное. Я просто добавлю, что между двумя последовательными наборами индексирующих скобок (либо массивом, либо хешем) стрелка разыменования является необязательной. Таким образом, ваш пример можно записать '$ classifier -> {result} {forcast} [$ i] {label}' (первая стрелка разыменования не является необязательной, поскольку она не находится между двумя наборами скобок). –