【发布时间】:2016-06-16 01:58:40
【问题描述】:
我是 Perl 的新手。我正在尝试确定如何打印数组哈希的大小。以下是我的代码的 sn-ps。
my %map = (); // Initialization
while ($line = <>) {
chomp($line);
// Logic to split the $line
push( @{$map{$first_var}}, $rest );
}
// Print the amp
foreach my $value (sort keys %map) {
print "$value: @{$map{$value}}\n";
}
在打印时,我得到以下格式的输出
valA: (num1 num2 num3 num4)
valb: (num2 num4)
valC: (num1 num3 num4)
我希望确定与每个键(valA、valB、valc)关联的元素数量。
我试过了:print "Number of nodes in the facility : scalar @{$map{$facility1}}\n";
但是它给出了
valA: scalar (num1 num2 num3 num4)
valb: scalar (num2 num4)
valC: scalar (num1 num3 num4)
我希望输出分别为 valA、valB、valC 显示 4、2、3。我可能会误解,但标量提供了数组的长度。
谢谢
【问题讨论】:
-
当您在 Stack Overflow 上提问时,您应该始终运行问题中的确切代码并确保所有输出都匹配。
-
//不是perl中的评论。您的代码无法运行。 -
对 // 感到抱歉。我在 Stackoverflow 编辑器中添加了它,以提高代码的可读性。