3

ので、私は持っています:

a = [["Hello", "Bye"], ["Morning", "Night"], ["Cat", "Dog"]]

そして、それを辞書に変換したい。

私は使用してみました:

i = iter(a)  
b = dict(zip(a[0::2], a[1::2]))

しかし、それは私にエラーを与えました:TypeError: unhashable type: 'list'

4

1 に答える 1

8

単に:

>>> a = [["Hello", "Bye"], ["Morning", "Night"], ["Cat", "Dog"]]
>>> dict(a)
{'Cat': 'Dog', 'Hello': 'Bye', 'Morning': 'Night'}

Python のシンプルさが好き

辞書を作成するすべての方法については、こちらを参照してください。

説明のために、次の例はすべて に等しい辞書を返します{"one": 1, "two": 2, "three": 3}

>>> a = dict(one=1, two=2, three=3)
>>> b = {'one': 1, 'two': 2, 'three': 3}
>>> c = dict(zip(['one', 'two', 'three'], [1, 2, 3]))
>>> d = dict([('two', 2), ('one', 1), ('three', 3)]) #<-Your case(Key/value pairs)
>>> e = dict({'three': 3, 'one': 1, 'two': 2})
>>> a == b == c == d == e
True
于 2013-04-08T09:29:25.477 に答える