你的變量等效於:
my $config = [
'x', [ 565, 706 ],
'y', [ 122 ],
'z', 34,
'za', 59,
];
所以,如果你想獲得的706,你可以這樣做:
print $config->[1][1];
按照問題
新數據更新
有了更新的問題,您現在可以訪問:
say $config->[0]{x}[1];
根據新的數據結構
根據您提供的最新更新數據結構的新更新:包含本身的哈希{
my @config = [
{
'x' => [ 565, 706 ],
'y' => [ 122 ],
'z' => 34,
'za' => 59,
}
];
您分配一個匿名數組[...] ...} 到數組@config,這將填充@config 與匿名數組的第一個元素
say Dumper \@config;
$VAR1 = [
[
{
'y' => [
122
],
'za' => 59,
'x' => [
565,
706
],
'z' => 34
}
]
];
say $config[0][0]{x}[1]; #prints 706
我想你想做的事之一:
my $config = [
{
'x' => [ 565, 706 ],
'y' => [ 122 ],
'z' => 34,
'za' => 59,
}
];
say $config->[0]{x}[1]; #prints 706
my @config = (
{
'x' => [ 565, 706 ],
'y' => [ 122 ],
'z' => 34,
'za' => 59,
}
);
say $config[0]{x}[1]; #prints 706
不知道的是,逗號後`59`真的是正確的。 – Benoit 2011-01-31 13:04:17
沒有逗號似乎沒有問題 – Thariama 2011-01-31 13:08:59
關於Perl的好處之一是關閉逗號是可選的。這意味着您可以將其保留在那裏,而無需擔心在需要添加更多項目時添加它。 – 2011-01-31 13:11:14