【Python】CSVファイルを1行ずつ読み込む方法とサンプルコードを紹介

【Python】CSVファイルを1行ずつ読み込む方法とサンプルコードを紹介

公開: 更新:


PythonでCSVファイルを1行ずつ読み込む基本的な方法

【サンプルコード】
import csv
with open('example.csv', 'r') as file:
  csv_reader = csv.reader(file)
  for row in csv_reader:
    print(row)
【実行結果】
['header1', 'header2', 'header3']
['row1_value1', 'row1_value2', 'row1_value3']
['row2_value1', 'row2_value2', 'row2_value3']

上記のコードの1行目では、Python標準ライブラリcsvモジュールをインポートしています。

csvモジュールは、CSVファイルの読み書きを簡単に行うための機能を提供しています。

2行目では、open()関数を使ってCSVファイルを読み込みモードで開いています。

'example.csv'は読み込むファイルの名前で、この場合は同じディレクトリに存在するファイルを指しています。

3行目では、csv.readerを使用してファイルの内容を読み込んでいます。

csv.readerはCSVファイルの各行をリストとして返すため、簡単にデータを扱えます。

4行目のforループでは、CSVファイルの各行を1行ずつ読み込んでいます。

row変数にはCSVの1行がリスト形式で格納され、これをprint()関数で出力しています。

上記のコードを実行すると、CSVファイルの各行がコンソールに出力されます。

出力結果では、各行がリスト形式で表示されており、CSVファイルの構造を維持しながらデータを読み込むことができています。

「Python」を学べるコードキャンプのサービス

CSVファイルの各行を辞書形式で読み込む方法

【サンプルコード】
import csv
with open('example.csv', mode='r') as file:
  csv_reader = csv.DictReader(file)
  for row in csv_reader:
    print(row)
【実行結果】
{'header1': 'row1_value1', 'header2': 'row1_value2', 'header3': 'row1_value3'}
{'header1': 'row2_value1', 'header2': 'row2_value2', 'header3': 'row2_value3'}

上記のサンプルコードでは、CSVファイルの各行を辞書形式で読み込む方法を示しています。

1行目でcsvモジュールをインポートした後、open()関数でCSVファイルを開きます。

3行目のcsv.DictReaderを使用すると、各行が辞書形式で読み込まれます。

ここでの辞書は、ヘッダーがキー(key)として、各行の値が値(value)として格納されます。

4行目のforループでは、CSVの各行を1行ずつ辞書形式で読み込み、print()関数で出力しています。

この方法では、CSVファイルのヘッダー情報をキーとして使用するので、データにアクセスしやすくなります。

出力結果は、CSVファイルの各行が辞書形式で表示され、ヘッダーと値が明確に対応していることがわかります。

エラーハンドリングを行いながらCSVファイルを読み込む方法

【サンプルコード】
import csv
try:
  with open('nonexistent.csv', 'r') as file:
    csv_reader = csv.reader(file)
    for row in csv_reader:
      print(row)
except FileNotFoundError:
  print('ファイルが見つかりませんでした。')
【実行結果】
ファイルが見つかりませんでした。

上記のサンプルコードでは、エラーハンドリングを使用してCSVファイルを読み込む方法を示しています。

tryブロック内でCSVファイルを開き、内容を読み込む処理を行います。

ここで、存在しないファイル名'nonexistent.csv'を指定しています。

ファイルが存在しない場合、FileNotFoundError例外が発生します。

exceptブロックではこの例外を捕捉し、適切なエラーメッセージを出力します。

この方法により、ファイルが見つからない場合でもプログラムがクラッシュせず、ユーザーに明確なフィードバックを提供できます。

※上記コンテンツの内容やソースコードはAIで確認・デバッグしておりますが、間違いやエラー、脆弱性などがある場合は、コメントよりご報告いただけますと幸いです。

ITやプログラミングに関するコラム


ITやプログラミングに関するニュース

ブログに戻る

コメントを残す

コメントは公開前に承認される必要があることにご注意ください。

コードキャンプIT・プログラミング研修事例/現場により近いところにデジタルを根付かせるDX基礎講座研修|株式会社ブリヂストン - ITやプログラミングを知って学べるコネクトメディア コードキャンプIT・プログラミング研修事例/業務の効率化・DX推進に向けたIT人材育成への第一歩|株式会社カナエ - ITやプログラミングを知って学べるコネクトメディア 企業・法人向けのIT・プログラミング研修 - ITやプログラミングを知って学べるコネクトメディア 中途採用者向けのIT・プログラミング研修 - IT・プログラミングを知って学べるコネクトメディア

新着記事

対象者別で探す

小中高生向け
プログラミング教室検索する

小学生・中学生・高校生がロボットやプログラミング言語を学ぶことができるオフラインからオンラインスクールを検索、比較することが可能です。

小中高生向け
プログラミング教室検索する

ITやプログラムなどの
最新情報を検索する

日々、新しいITやプログラミング言語の情報が流れていきますが、特定の情報を時系列でニュースやコラムを確認することができます。

ITやプログラムなどの
最新情報を検索する