Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个带有键和值的哈希。如何检索所需键的值?
%a = qw(genea brain geneb heart genec kidney gened eye);
现在我想检索键genec和gened. 我怎样才能做到这一点?
genec
gened
要一次获取多个键的值列表,请使用哈希切片:
@lots_of_values = @hash{ @lots_of_keys };
因为结果是一个列表,所以@即使它是一个散列,你也可以使用印记;这些值将是指定键的顺序,包括散列中不存在指定键的 undef 值。
@
听起来您要问的只是如何访问哈希的元素。正如 Quentin 所指出的,这在谷歌上是微不足道的。
perldata文档涵盖了基本问题,而perlfaq4涵盖了许多其他哈希问题。
也就是说,回答你的问题:
print $a{'genec'}; print $a{'gened'};
我也不会以这种方式声明您的哈希,因为不清楚什么是键,什么是值。相反,请考虑:
my %a = ('genea' => 'brain', 'geneb' => 'heart'); # etc.
$GENEC = $a{genec}; $GENED = $a{gened};
请给自己一份学习 Perl 的副本。你会很高兴你做到了。