У меня есть следующий фрагмент в 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
в анонимную ссылку на хеш.
Почему я не получаю хеш-подобный вывод, когда я выгружаю хеш-таблицу?