これは私の一部(または私のスキルセットよりもはるかに進んだもの)の単純な監視かもしれません。私は、ファイルから入力を読み込んで2次元連想配列を動的に埋めようとしています。Perl動的生成多次元連想配列
my @data;
while (<FILE>) {
chomp;
my $ID,$COUNT;
print "READ: " . $_ . "\n"; #Debug 1
($ID,$COUNT,undef,undef,undef) = split /\,/;
print "DATA: " . $ID . "," . $COUNT . "\n"; # Debug 2
$data{$ID}{"count"} = $COUNT;
#push @{$data{$ID}{"count"}}, $COUNT;
print $data{$ID}{"count"} . "\n"; # Debug 3
}
最初の印刷(デバッグ1)は、des313,3 ,,,に似た行を出力します。空白行を印刷するdes313,3
第三のプリント(デバッグ3):
第二の印刷(デバッグ2)ラインデータを印刷します。
問題は、データを結合配列に挿入しようとしているようです。私は直接挿入とプッシュメソッドの両方を試してみましたが結果はありません。私はPHPでこれを行ったが、私はPerlでこれを見落としていると思う。私はハッシュのハッシュのセクションでperldoc perldscのページを見ましたが、私はそれがそれらの動的な生成について話しているのを見ませんでした。どんな提案も素晴らしいだろう!
それは、そのままあなたのコードは私のために正常に動作改善することができるが。 3番目のデバッグ行は、$ COUNTの格納された値を正しく出力します。このコードをもう一度チェックして、どのような結果が得られたのか、使用しているデータファイルの内容を教えてください。 – Borodin
「連想配列」という言葉を使っているソースからPerlを学んでいるなら、それはほぼ間違いなく時代遅れです。 15歳以上でないものを探してください。 –