次の効果を生成したい:
for i, j in d.items() and k, v in c.items():
print i, j, k, v
これは間違っています。どうすればこれを達成できるか知りたいですか?
次の効果を生成したい:
for i, j in d.items() and k, v in c.items():
print i, j, k, v
これは間違っています。どうすればこれを達成できるか知りたいですか?
for (i, j), (k, v) in zip(d.items(), c.items()):
print i, j, k, v
OrderedDict
辞書がsでない限り、順序は任意であることを忘れないでください。メモリ効率を高める
Python 2.x (wheredict.items
およびzip
create リスト) では、次のことができます。
from itertools import izip
for (i, j), (k, v) in izip(d.iteritems(), c.iteritems()):
print i, j, k, v
小さなリストでは、これらの中間リストを反復する方が高速であることがわかりますが、非常に大きなデータ構造を反復すると速度が向上することに気付くため、これは必ずしも高速ではありません。
Python 3.x では(これはもう存在しません) とzip
同じであり、 (もう存在しません) はlistではなくビューを返します。izip
dict.items
dict.iteritems