实质上,我想命名列表的元素。
我可以这样做:
($hash{'foo'}, $hash{'bar'}, $hash{'baz'}) = listmaker;
但如果列表中有很多元素,则会变得相当冗长。
是否只有一个更简单的方法来命名哈希一次?也许有一些变化:
%hash = ("foo" => "abc", "bar" => "def", "baz" => "ghi");
但是值来自函数listmaker
?我设想了某种map
咒语。
答案 0 :(得分:2)
使用哈希切片:
@hash{'foo', 'bar', 'baz'} = listmaker
或
@hash{qw( foo bar baz )} = listmaker