如果值满足特定条件,我将尝试打印出散列的键。但是,如果哈希键满足值条件,我不确定如何访问它。这是我的代码:
foreach my $x (values %hash){
if ($x > $ARGV[1]){
$counter = $counter + 1
print "keys %hash\n"
}
}
print "$counter\n"
最佳答案
当您遍历这些值时,您无权访问 key 。
for my $key (keys %hash) {
if ($hash{$key} > $ARGV[1]) {
$counter = $counter + 1;
print "$key\n";
}
}
print "$counter\n";
或
keys %hash; # reset iterator
while (my ($key, $value) = each %hash) {
if ($value > $ARGV[1]) {
$counter = $counter + 1;
print "$key\n";
}
}
print "$counter\n";
关于perl - 在 foreach 循环中打印出与 Perl 中的值关联的键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32426560/