ホームページ >バックエンド開発 >Golang >Encoding/csv パッケージが提供する関数を使用して、CSV ファイルの読み取りと書き込みを行います。

Encoding/csv パッケージが提供する関数を使用して、CSV ファイルの読み取りと書き込みを行います。

WBOY
WBOYオリジナル
2023-07-24 13:13:121328ブラウズ

encoding/csv パッケージで提供される関数を使用して、CSV ファイルの読み取りと書き込みを行う

CSV (カンマ区切り値) は、データをカンマ区切り形式で単純に区切ることができる、一般的に使用されるデータ ストレージ形式です。テキストファイルとして。 Python では、標準ライブラリの encoding/csv パッケージを使用して、CSV ファイルを簡単に読み書きできます。

まず、encoding/csv パッケージをインポートする必要があります。

import csv

次に、csv.reader 関数を使用して、 CSV ファイル。 csv.readerこの関数は、ファイル オブジェクトをパラメータとして受け取り、CSV ファイルを 1 行ずつ読み取るために使用できるイテレータ オブジェクトを返します。

次の例は、 data.csv という名前の CSV ファイルがあり、次のデータが含まれていると仮定しています。

Name,Age,City
John,25,New York
Lisa,30,San Francisco
David,40,Los Angeles

csv を使用できます。ファイルのデータを読み取るreader関数:

with open('data.csv', 'r') as file:
    reader = csv.reader(file)
    for row in reader:
        print(row)

出力結果:

['Name', 'Age', 'City']
['John', '25', 'New York']
['Lisa', '30', 'San Francisco']
['David', '40', 'Los Angeles']

ご覧のとおり、各行のデータがリスト形式で返されます。このうち、最初の行は CSV ファイルのヘッダーで、その後にデータ行が続きます。

csv.reader 関数を使用して CSV ファイルを読み取るだけでなく、csv.writer 関数を使用して CSV ファイルを書き込むこともできます。

次の例は、data.csv という名前の空のファイルがあると仮定し、csv.writer 関数を使用してファイルにデータを書き込むことができます。

data = [
    ['Name', 'Age', 'City'],
    ['John', '25', 'New York'],
    ['Lisa', '30', 'San Francisco'],
    ['David', '40', 'Los Angeles']
]

with open('data.csv', 'w', newline='') as file:
    writer = csv.writer(file)
    writer.writerows(data)

CSV ファイルを書き込むときは、空白行の生成を避けるために newline='' パラメーターを使用することに注意してください。

上記のコードは、データを data.csv ファイルに書き込みます。ファイルを開くと、その内容が先ほど読み込んだ CSV ファイルと同じであることがわかります。

基本的な読み取りと書き込みに加えて、encoding/csv パッケージは、より高度な機能を実現するための他の関数とオプションも提供します。たとえば、csv.DictReader 関数と csv.DictWriter 関数を使用して、CSV ファイルに対して辞書形式の読み取りおよび書き込み操作を実行できます。

要約すると、encoding/csv パッケージが提供する機能を使用すると、CSV ファイルの読み書きが簡単に行えます。それだけでなく、encoding/csv パッケージは、さまざまな複雑なニーズを満たすためのより高度な機能も提供します。 CSV ファイルを処理する必要がある場合、encoding/csv パッケージは間違いなく最初の選択肢の 1 つです。

以上がEncoding/csv パッケージが提供する関数を使用して、CSV ファイルの読み取りと書き込みを行います。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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