Python | pathlib を使ってCSVファイルを扱う実践例

Python Python
スポンサーリンク

ここでは pathlib を使ってCSVファイルを扱う実践例 を、初心者向けに分かりやすく紹介します。pathlib はファイルパス操作をシンプルにしてくれるので、CSVの読み書きと組み合わせるととても便利です。


1. CSVファイルの存在確認

from pathlib import Path

# CSVファイルのパスを指定
csv_path = Path.home() / "Documents" / "data.csv"

if csv_path.exists():
    print("CSVファイルが見つかりました:", csv_path)
else:
    print("CSVファイルが存在しません")
Python

👉 Path.exists() でファイルの有無を確認できます。


2. CSVファイルの読み込み(標準ライブラリ)

import csv
from pathlib import Path

csv_path = Path.home() / "Documents" / "data.csv"

with csv_path.open("r", encoding="utf-8") as f:
    reader = csv.reader(f)
    for row in reader:
        print(row)
Python

👉 csv.reader を使うと、1行ごとにリストとして読み込めます。


3. CSVファイルの書き込み

import csv
from pathlib import Path

csv_path = Path.home() / "Documents" / "output.csv"

data = [
    ["名前", "年齢", "職業"],
    ["田中", 28, "エンジニア"],
    ["佐藤", 34, "デザイナー"],
]

with csv_path.open("w", newline="", encoding="utf-8") as f:
    writer = csv.writer(f)
    writer.writerows(data)

print("CSVを書き込みました:", csv_path)
Python

👉 writer.writerows() でリストのリストを一気に書き込めます。


4. CSVを辞書形式で扱う(便利!)

import csv
from pathlib import Path

csv_path = Path.home() / "Documents" / "data.csv"

with csv_path.open("r", encoding="utf-8") as f:
    reader = csv.DictReader(f)
    for row in reader:
        print(row["名前"], row["年齢"])
Python

👉 DictReader を使うと、ヘッダー行をキーにして辞書としてアクセスできます。


5. 実践例:CSVを読み込んで平均年齢を計算

import csv
from pathlib import Path

csv_path = Path.home() / "Documents" / "people.csv"

ages = []
with csv_path.open("r", encoding="utf-8") as f:
    reader = csv.DictReader(f)
    for row in reader:
        ages.append(int(row["年齢"]))

if ages:
    avg_age = sum(ages) / len(ages)
    print(f"平均年齢: {avg_age:.1f} 歳")
Python

✅ まとめ

  • pathlib でパス操作をシンプルに
  • csv.reader / csv.writer で基本的な読み書き
  • csv.DictReader でヘッダー付きCSVを辞書として扱える
  • 実用的には「データ集計」「ログ保存」などに応用可能

👉 次のステップとしては、pandas と組み合わせてCSVを扱うと、さらに強力なデータ分析ができるようになります。

Python
スポンサーリンク
シェアする
@lifehackerをフォローする
スポンサーリンク
タイトルとURLをコピーしました