【发布时间】:2012-03-24 19:26:36
【问题描述】:
我有这样的代码:
use Data::Dumper;
my %hash = (
'chrX' => {
'b' => [
'-51811268 210',
'-51810794 350',
'-51809935 298'
],
'f' => [
'51929018 210',
'51929492 350',
'51930351 298'
]
}
);
foreach my $cnam ( keys %hash ) {
my @lpos_f = ();
my @lpos_b = ();
if ( $hash{$cnam}{"f"} ) {
@lpos_f = @{ $hash{$cnam}{"f"} };
print "+\n";
print Dumper \@lpos_f;
}
elsif ( $hash{$cnam}{"b"} ) {
@lpos_b = @{ $hash{$cnam}{"b"} };
print "-\n";
print Dumper \@lpos_b;
}
}
为什么它没有在每个 ELSIF 条件下提供打印输出,例如 它给了这两个。
+
[
'51929018 210',
'51929492 350',
'51930351 298'
];
-
['-51811268 210',
'-51810794 350',
'-51809935 298'
];
目前它只给出“+”输出
【问题讨论】:
标签: perl data-structures hash