"Can't use string as a hash ref"哈希的哈希 哈希的哈希



我似乎在处理哈希的哈希的哈希时遇到了麻烦。我的数据结构是这样的:

$atomsArray{$number}{$serial} = {
    atom => $atom,
    x => $x,
    y => $y,
    z => $z
};

在遍历原子

时遇到了这个问题
for my $number(sort keys %atomsArray){
    for my $serial(sort keys %{$atomsArray{$number}}){
       #cannot iterate through x,y,z
    }
}

虽然,我想要得到x,y,z而不遍历$serial,在一个散列中使用散列是很重要的,因为它不同于我要计算的原子

因为我是一个愚蠢的人,我无法得到简单的迭代。如何迭代哈希的哈希的哈希的答案是:

for my $number(sort keys %atomsArray){
   for my $serial(sort keys %{$atomsArray{$number}}){
      print $atomsArray{$number}{$serial}{'x'};
   }
}

最新更新