値のペアの配列(リスト)から連想配列を生成するには (toMap) 2015/04/05
値のペアの配列(リスト)から連想配列(マップ/ハッシュ/ディクショナリ)を生成する方法。
[["a", 1], ["b", 2], ["c", 3]]
というような配列の配列から {"a": 1, "c": 3, "b": 2}
というような連想配列への変換である。もしくは ["a", 1, "b", 2, "c", 3]
というような長さが偶数の配列から連想配列への変換である。
Scala 2016/07/21
例
val list = List(("a", 1), ("b", 2));
list.toMap; // => Map("a" -> 1, "b" -> 2)
Signature:
Python 2015/01/11
dict
関数に長さ2のタプルのリストを与えるとディクショナリになる。タプルでなくて長さ2のリストのリストでもよい。
# タプルのリスト
lst = [('a', 1), ('b', 2), ('c', 3)]
dic = dict(lst)
print(dic)
# => {'a': 1, 'c': 3, 'b': 2}
# ディクショナリにはエントリの順序が保存されないので、lstと同じとは限らない
# リストのリスト
lst = [['a', 1], ['b', 2], ['c', 3]]
dic = dict(lst)
print(dic)
# => {'a': 1, 'c': 3, 'b': 2}
Ruby 2014/04/17
長さが偶数の配列をハッシュに変換する例
arr = ['a', 1, 'b', 2]
Hash[*arr] # {'a' => 1, 'b' => 2}
長さ2の配列を要素とする配列をハッシュに変換する例 (flatten
を使って長さが偶数の配列にする)
arr = [['a', 1], ['b', 2]]
Hash[*arr.flatten(1)] # {"a"=>1, "b"=>2}
Perl 2013/07/30
偶数個の要素を持つ配列をハッシュに変換する方法。単にハッシュに代入すればいいだけ。
my @arr = ('a', 'abc', 'd', 'def');
my %map = @arr;
print $map{d};
# => def