perl 第三层hash 提取keys 错误%hash = (name => {small => {dog => 1,cat => 2,rabit => 3,},medium => 1,large => 2,},);my @keys = keys %{$hash{name}}; ==> result:large small medium...3.my @keys = keys %{$hash{name{small}}};==> Can't locate object
来源:学生作业帮助网 编辑:作业帮 时间:2024/06/22 16:40:47
![perl 第三层hash 提取keys 错误%hash = (name => {small => {dog => 1,cat => 2,rabit => 3,},medium => 1,large => 2,},);my @keys = keys %{$hash{name}}; ==> result:large small medium...3.my @keys = keys %{$hash{name{small}}};==> Can't locate object](/uploads/image/z/14170769-17-9.jpg?t=perl+%E7%AC%AC%E4%B8%89%E5%B1%82hash+%E6%8F%90%E5%8F%96keys+%E9%94%99%E8%AF%AF%25hash+%3D+%28name+%3D%3E+%7Bsmall+%3D%3E+%7Bdog+%3D%3E+1%2Ccat+%3D%3E+2%2Crabit+%3D%3E+3%2C%7D%2Cmedium+%3D%3E+1%2Clarge+%3D%3E+2%2C%7D%2C%29%3Bmy+%40keys+%3D+keys+%25%7B%24hash%7Bname%7D%7D%3B+%3D%3D%3E+result%3Alarge+small+medium...3.my+%40keys+%3D+keys+%25%7B%24hash%7Bname%7Bsmall%7D%7D%7D%3B%3D%3D%3E+Can%27t+locate+object)
perl 第三层hash 提取keys 错误%hash = (name => {small => {dog => 1,cat => 2,rabit => 3,},medium => 1,large => 2,},);my @keys = keys %{$hash{name}}; ==> result:large small medium...3.my @keys = keys %{$hash{name{small}}};==> Can't locate object
perl 第三层hash 提取keys 错误
%hash = (
name => {
small => {
dog => 1,
cat => 2,
rabit => 3,
},
medium => 1,
large => 2,
},
);
my @keys = keys %{$hash{name}}; ==> result:large small medium...3.
my @keys = keys %{$hash{name{small}}};==> Can't locate object method "name" via package "small" (perhaps you forgot to load "small"?) at hash line 20.
my $keys = @keys;
print "@keys...$keys.\n"
为什么无法获取第三层的hash keys,而第二层则正常?
perl 第三层hash 提取keys 错误%hash = (name => {small => {dog => 1,cat => 2,rabit => 3,},medium => 1,large => 2,},);my @keys = keys %{$hash{name}}; ==> result:large small medium...3.my @keys = keys %{$hash{name{small}}};==> Can't locate object
keys %{$hash{name{small}}}需要修改为
keys %{$hash{name}{small}}