【发布时间】:2014-07-23 14:00:17
【问题描述】:
我有两个这样的数组
my @keys = qw/Key_1 Key_2 Key_3/;
my @values = qw/foo bar more/;
有没有一种捷径(即单个函数)可以在不使用循环的情况下获得这样的哈希?
my %hash_table = ( Key_1 => "foo", Key_2 => "bar", Key_3 => "more" );
我尝试使用map函数但没有成功。
【问题讨论】:
我有两个这样的数组
my @keys = qw/Key_1 Key_2 Key_3/;
my @values = qw/foo bar more/;
有没有一种捷径(即单个函数)可以在不使用循环的情况下获得这样的哈希?
my %hash_table = ( Key_1 => "foo", Key_2 => "bar", Key_3 => "more" );
我尝试使用map函数但没有成功。
【问题讨论】:
使用哈希slice,
my %hash_table;
@hash_table{@keys} = @values;
使用地图,
my %hash_table = map { $keys[$_] => $values[$_] } 0 .. $#keys;
【讨论】: