gpt4 book ai didi

perl - 使用哈希访问哈希

转载 作者:行者123 更新时间:2023-12-04 04:52:34 24 4
gpt4 key购买 nike

我有这个带有散列的散列。

我只想迭代“0”的值。

$VAR1 = {
'1' => {
'192.168.1.1' => '192.168.1.38'
},
'0' => {
'192.168.32.6' => '192.168.32.43'
}
};

我可以访问它的唯一方法是创建两个 foreach my $key (keys(%myhash))循环:

我可以使用:
foreach my $key (keys(%myhash{0}))  ## does not work

或以某种方式直接访问值?

谢谢

最佳答案

首先,如果您使用连续整数作为散列的键,那么您很可能应该使用数组。

键值0对应的hash值是 $dhcpoffers{0}因为它是一个标量值。 %dhcpoffers{0}只是一个语法错误。

你需要

for my $key (keys %{ $dhcpoffers{0} }) { ... }

或者,如果您愿意
my $offer_0 = $dhcpoffers{0};
for my $key (keys %$offer_0) { ... }

从 Perl 5 的 14 版开始, keys将接受散列引用,因此您可以编写更清晰的代码
for my $key (keys $dhcpoffers{0}) { ... }

关于perl - 使用哈希访问哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17214728/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com