【发布时间】:2016-09-01 17:53:15
【问题描述】:
您好,我有一个 Perl 哈希定义为:
foreach my $pair (@correlatedPttns)
{
# slice the data out
my @tmp = ();
for (my $x = 0; $x<$cnt; $x++)
{
push @tmp,[ @{ $data[$x] } [ 0, @$pair[0], @$pair[1] ] ]; # epochtime, Pi, Pj
}
#build hash
$pairToDataHash{Dumper(@$pair)} = \@tmp;
}
如果输出哈希,打印 Dumper(\%pairToDataHash),它看起来像:
$VAR1 = {
'$VAR1 = 30;
$VAR2 = 31;
' => [
[
'TIME',
'P30',
'P31'
],
[
'1398038853',
'0',
'0'
],
如何获取单个密钥,因为密钥是通过 Dumper 形成的数组。我需要访问值 $VAR1=30。如何获得键的元素?
for ( keys %pairToDataHash)
{
#get the key element value.
}
【问题讨论】:
-
@correlatedPttns、@data和$cnt是什么?你有use strict和use warnings 'all'吗? -
您的主题行是
print Perl hash key value (key is an array),但 Perl 哈希键只能是简单的 C 字符串:它甚至不是 Perl 字符串。