gpt4 book ai didi

哈希问题的 Perl 哈希

转载 作者:行者123 更新时间:2023-12-02 05:29:07 26 4
gpt4 key购买 nike

我在这里看到了令人作呕的类似问题,但没有一个能具体回答我自己的问题。

我正在尝试以编程方式创建哈希的哈希。我的问题代码如下:

my %this_hash = ();
if ($user_hash{$uuid})
{
%this_hash = $user_hash{$uuid};
}

$this_hash{$action} = 1;

$user_hash{$uuid} = %this_hash;
my %test_hash = $user_hash{$uuid};
my $hello_dumper = Dumper \%this_hash;

根据我的输出,$this_hash 被正确分配但是

$user_hash{$uuid} = %this_hash

在调试器中显示 1/8 的值;不知道他的意思。我还收到一条警告:“哈希分配中元素的奇数...”

最佳答案

任何时候你写

%anything = $anything

你做错了什么。几乎任何时候你写

$anything = %anything

你做错了什么。这包括当 $anything 是数组或哈希访问时(即 $array[$index]$hash{$key})。存储在数组和散列中的值始终是标量,而数组和散列本身不是标量。所以,当你想在一个散列中存储一个散列时,你可以存储一个对它的引用:$hash{$key} =\%another_hash。当您想要访问存储在散列中的散列时,您可以取消引用:%another_hash = %{ $hash{$key} } $hashref = $hash {$键}; $value = $hashref->{ $another_key }$value = $hash{$key}{$another_key}

为了快速了解引用资料,我强烈建议阅读 Perl References TutorialPerl Data Structures Cookbook .

关于哈希问题的 Perl 哈希,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6312487/

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