整数のリストがある場合:
L=[1,2,3,4]
タプルリストのリストがあります:
K=[('a','b'),('c','d'),('e','f'),('g','i')]
キーがKのアイテムで、値がLの整数であるdictのリストを作成するにはどうすればよいですか。各整数はKのアイテムに対応しています
d={('a','b'):1,('c','d'):2,('e','f'):3,('g','i'):4}
整数のリストがある場合:
L=[1,2,3,4]
タプルリストのリストがあります:
K=[('a','b'),('c','d'),('e','f'),('g','i')]
キーがKのアイテムで、値がLの整数であるdictのリストを作成するにはどうすればよいですか。各整数はKのアイテムに対応しています
d={('a','b'):1,('c','d'):2,('e','f'):3,('g','i'):4}
zip()
2 つの iterable を組み合わせてペアにし、それをdict
コンストラクターに渡すために使用します。
d = dict(zip(K, L))
dict
簡単なデモ (順序を保持しないことを考慮してください):
>>> L=[1,2,3,4]
>>> K=[('a','b'),('c','d'),('e','f'),('g','i')]
>>> dict(zip(K, L))
{('e', 'f'): 3, ('a', 'b'): 1, ('c', 'd'): 2, ('g', 'i'): 4}
for ループと no を使用zip()
:
d={}
for i, key in enumerate(K):
d[key] = L[i]
for ループを使用する必要がある場合 (これは宿題ですか?)、次のように実行できます。
d = {}
for i in xrange(len(K)):
最後の行を自分で把握する必要があります。
インデックスのループは、他の言語でも使用できる手法であり、Python では (ごくまれに) 必要になることがあります。一般に、Python の高水準言語機能を使用して、コードを読みやすく、読みやすく、デバッグしやすくする必要があります。
あなたはそれを行うことができるはずですzip
:
zipped = zip(K, L)
d = dict(zipped)