小池啓仁 ヒロヒト応援ブログ By はてな

小池啓仁(コイケヒロヒト)の動画など。

小池啓仁 ヒロヒト応援ブログ By はてな

キーとデータの別々のリストからハッシュを作る

一対一に対応しているキーとデータの別々のリストあったとします。
それらのリストで、簡単にハッシュを作ることができます(3ケース)。

my @key = ("aaa", "bbb", "ccc");  # キーリスト
my @data = ("111", "222", "333"); # データリスト
my (%d, %e, %f);

# ケース1
@d{@key} = @data;
print $d{aaa}, $d{bbb}, $d{ccc}, "\n"; #111222333表示

# ケース2
@e{@key} = ("111", "222", "333");
print $e{aaa}, $e{bbb}, $e{ccc}, "\n"; #111222333表示

# ケース3
@f{"aaa", "bbb", "ccc"} = ("111", "222", "333");
print $f{aaa}, $f{bbb}, $f{ccc}, "\n"; #111222333表示

注目は、d,e,fに各々『%』『@』『$』が先頭に付いて三変化しています。