フラット リストを辞書に変換する
Python では、キーと値のペアのリストを辞書に変換することは、いくつかの方法で実現できます。方法。最も簡単な方法は、dict() 関数を使用することです。たとえば、リスト a = ['hello', 'world', '1', '2'] の場合、次の構文を使用して辞書 b を作成できます。
b = dict(zip(a[::2], a[1::2]))
このコード行zip() 関数を使用してタプルのリストを作成します。各タプルにはキーとそれに対応する値が含まれます。次に、dict() 関数は、このタプルのリストを辞書に変換します。
リストを辞書に変換する別の方法は、辞書内包表記を使用することです。このアプローチは、特に大きなリストの場合、より簡潔で読みやすくなります。
b = {a[i]: a[i+1] for i in range(0, len(a), 2)}
この内包表記は、リスト a をペアで反復処理し、最初の要素をキーに割り当て、2 番目の要素を値に割り当てます。
リストが非常に大きい場合は、中間リストの作成を避けた方がよいかもしれません。このような場合、 itertools.izip() 関数を使用すると、一時リストを作成せずに、リストを遅延的に反復処理できます。このアプローチの構文は次のとおりです。
from itertools import izip i = iter(a) b = dict(izip(i, i))
Python 3 では、zip() 関数はすでに遅延しているため、izip() を使用する必要はありません。 「セイウチ」演算子 (:=) を使用して、これを 1 行で記述することもできます:
b = dict(zip(i := iter(a), i))
以上がPython でキーと値のペアのフラット リストを辞書に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。