从散列引用获取Perl访问值

从散列引用获取Perl访问值,perl,hashref,perl-hash,Perl,Hashref,Perl Hash,在我的Perl代码中,我最终得到了如下所示的哈希引用。我想从中访问单个元素。我尝试了多种方法,但都没能找到 #!/usr/bin/perl #use strict; use Data::Dumper; my %h={'one'=>1,'two'=>2}; print Dumper($h{'one'}); 输出 $VAR1 = undef; 用于构造哈希,而不是大括号: use strict; use warnings; use Data::Dumper; my %h = ('o

在我的Perl代码中,我最终得到了如下所示的哈希引用。我想从中访问单个元素。我尝试了多种方法,但都没能找到

#!/usr/bin/perl
#use strict;
use Data::Dumper;
my %h={'one'=>1,'two'=>2};
print Dumper($h{'one'});
输出

$VAR1 = undef;
用于构造哈希,而不是大括号:

use strict;
use warnings;
use Data::Dumper;

my %h = ('one'=>1, 'two'=>2);
print Dumper($h{'one'});
大括号用于构造哈希引用

另外,添加
使用警告,这将生成一条消息,表明您的代码有问题


或者,如果您真的想要一个hashref:

my $h = {'one'=>1, 'two'=>2};
print "$h->{one}\n";
您(意外地)在那里做的是创建一个散列,其中的键是一个字符串化的散列引用,值是
undef
。而且
perldoc perlref
有一个部分叫做。

始终
使用严格;使用警告!如果您这样做了,您会看到类似于
Reference的内容,它是在大小相同的列表中找到的