2012-01-04 141 views
5

以下代碼片段,是我對$label = $classifier->{result}->{forcast}->[$i]->{label};的理解是否正確?如何分析哈希示例的哈希值?

1)結果被用作分類器的哈希引用的關鍵字;

2)FORCAST被用作鍵$分類器的哈希REF - > {結果}

3)$分類 - > {結果} - > {FORCAST}是一個裁判的陣列,以及i這個數組的第一個值也是散列引用

4)標籤是哈希引用$ classifier - > {result} - > {forcast} - > [$ i]的關鍵。相應的值分配給$ label的左側。

my $i=0; 
while (<classifierinput>) 
{ 
    $label = $classifier->{result}->{forcast}->[$i]->{label}; 
    $i++; 
} 
+0

classifierinput是如何定義的?這段代碼應該完成什麼? – Dave 2012-01-04 03:24:47

+0

你的理解是正確的。我只需在兩個連續的索引括號集(數組或散列)之間添加它,解引用箭頭是可選的。所以你的例子可以寫成'$ classifier - > {result} {forcast} [$ i] {label}'(第一個解引用箭頭不是可選的,因爲它不在兩組括號之間)。 – 2012-01-04 09:13:44

回答

2

是的,你的理解是正確的。