我试图让散列哈希值唯一地标识只在一个集合级别下出现的数字。哈希结构看起来是这样的:获取散列哈希中的第n个值/最后一个值
my %gh = {
'Test1' => {
'level1a' => {
'level2b' => {
'level3a' => {
'level4a' => {
'level5' => '63'
}
}
}
}
}
};
一些能告诉我什么是遍历散列,所以我可以我一直在使用中获得的价值63
最简单的方法
my $x = '';
foreach my $l0 (%gh){
foreach my $l1 (%{$l0}){
foreach my $l2 (%$l1){
foreach my $l3 (%{$l2}){
foreach my $l4 (%$l3){
foreach my $l5 (%{$l4}){
$x = $l5;
}
}
}
}
}
}
这个过程似乎工作正常。但我只是在寻找更简单和更短的东西;
在此先感谢
您的示例wi你不会做你期望的。此外,你的上面的代码将不起作用,因为你正在为散列分配一个hashref。 – simbabque
你想如何提取价值,你提前知道什么关于哈希结构? –
只有每个散列只有一个键时,这个问题才有意义,在这种情况下,数据结构没有意义。 – ikegami