ホームページ  >  記事  >  バックエンド開発  >  キーと値のペアの CSV ファイルから単一の辞書を効率的に作成するにはどうすればよいですか?

キーと値のペアの CSV ファイルから単一の辞書を効率的に作成するにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-11-19 06:18:03460ブラウズ

How Can I Efficiently Create a Single Dictionary from a CSV File of Key-Value Pairs?

一意のキーと値のペアで構成される CSV ファイルからの統合辞書の作成

CSV ファイルを処理するときの一般的なタスクの 1 つは、各行が一意のキーと値のペアを表す辞書。 「csv.DictReader」クラスは、このようなファイルを行ごとに反復処理する便利な方法を提供しますが、統合された辞書を作成するには別のアプローチが必要です。

提供されたコードは、ネストされたループ内で辞書を構築しようとします。 、予期される値が 2 つだけであるにもかかわらず複数の値を解凍しようとしたため、「ValueError」が発生します。この問題に対処するには、構文を少し変更する必要があります。

Python 3:

import csv

with open('coors.csv', mode='r') as infile:
    reader = csv.reader(infile)
    with open('coors_new.csv', mode='w') as outfile:
        writer = csv.writer(outfile)
        mydict = {rows[0]: rows[1] for rows in reader}

Python 2:

import csv

with open('coors.csv', mode='r') as infile:
    reader = csv.reader(infile)
    with open('coors_new.csv', mode='w') as outfile:
        writer = csv.writer(outfile)
        mydict = dict((rows[0], rows[1]) for rows in reader)

この改訂された構文は、CSV を正しく反復処理します。ファイルを開き、各行の最初の列からキーを抽出し、2 番目の列から値を抽出します。結果は、キーが一意で最初の列から取得され、値が 2 番目の列から取得された単一のディクショナリになります。このアプローチでは、すべてのキーと値のペアが包括的な辞書に統合されます。

以上がキーと値のペアの CSV ファイルから単一の辞書を効率的に作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。