我在 Perl 中有以下代码段:
my $a1 = [ qw(rock pop musical) ];
my $b1 = [ qw( mystery action drama )];
my $c1 = [ qw( biography novel periodical)];
my %media = (
music => $a1,
file => $b1,
print => $c1
);
我尝试按如下方式打印:
use Data::Dumper;
print Dumper (%media);
我懂了:
$VAR1 = 'file';
$VAR2 = [
'mystery',
'action',
'drama'
];
$VAR3 = 'music';
$VAR4 = [
'rock',
'pop',
'musical'
];
$VAR5 = 'print';
$VAR6 = [
'biography',
'novel',
'periodical'
];
它像列表一样打印哈希。我所期待的是这样的东西,它表示它是一个哈希。
$VAR1 = {
'file' => [
'mystery',
'action',
'drama'
],
'music' => [
'rock',
'pop',
'musical'
],
'print' => [
'biography',
'novel',
'periodical'
]
};
%media
但是只有当我将它转换为匿名哈希引用时,我才会得到这个。
为什么我在转储哈希表时没有得到类似哈希的打印?