这可能是我的一个简单的忽略(或比我的技能更先进的东西)。我试图通过从文件中读取输入来动态填充2d关联数组。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 ,,,的行。
第二打印(调试2)将打印线DATA:des313,3
第三打印(调试3)将打印一个空行。
这个问题似乎是我试图将数据插入关联数组的方式。我已经尝试了直接插入和推式方法,但没有结果。我已经用PHP做了这个,但我认为我在Perl中忽略了这一点。我在HASHES的HASHES部分查看了perldoc perldsc页面,但是我没有看到它谈论它们的动态生成。任何建议都会很棒!
尽管可以提高你的代码工作正常,我因为它的立场。第三个调试行正确打印存储的$ COUNT值。请再次检查此代码,并告诉我们您会得到什么结果以及您正在使用的数据文件的内容。 – Borodin 2012-01-15 04:40:44
如果您从使用术语“关联数组”的源学习Perl,那么它几乎肯定是过时的。请找一些不超过15岁的东西。 – 2012-01-15 16:29:21