Pythonでファイルの読み込み・書き込みを完全マスター!初心者向け実践ガイド

 

Pythonでファイルの読み込み、書き込み(作成・追記)操作は、データ処理やログファイル管理において必須のスキルです。本記事では、基本的なファイル操作から応用的な使い方まで、サンプルコード付きで詳しく解説します。

ファイルの読み込み方法

基本的な読み込み

# ファイル全体を読み込み
with open('sample.txt', 'r', encoding='utf-8') as f:
    content = f.read()
    print(content)

行単位での読み込み

# 行単位で読み込み
with open('sample.txt', 'r', encoding='utf-8') as f:
    for line in f:
        print(line.strip())

全行をリストで読み込み

# 全行をリストとして読み込み
with open('sample.txt', 'r', encoding='utf-8') as f:
    lines = f.readlines()
    print(lines)

ファイルの書き込み・作成方法

新規ファイル作成(上書き)

# 新規ファイル作成(既存ファイルは上書き)
with open('output.txt', 'w', encoding='utf-8') as f:
    f.write('Hello, Python!')

リストの内容を書き込み

# リストの内容をファイルに書き込み
data = ['行1', '行2', '行3']
with open('output.txt', 'w', encoding='utf-8') as f:
    for item in data:
        f.write(item + '\n')

ファイルの追記方法

既存ファイルに追記

# 既存ファイルに追記
with open('log.txt', 'a', encoding='utf-8') as f:
    f.write('新しいログエントリ\n')

日付付きログの追記

from datetime import datetime

# 日付付きでログを追記
with open('log.txt', 'a', encoding='utf-8') as f:
    timestamp = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    f.write(f'[{timestamp}] ログメッセージ\n')

withステートメントを使う理由

withステートメントを使用することで、ファイルの自動クローズが保証され、メモリリークやファイルハンドルの枯渇を防げます。

ファイル操作時の注意点

エンコーディングの指定

# 日本語ファイルを扱う場合はencodingを明示
with open('japanese.txt', 'r', encoding='utf-8') as f:
    content = f.read()

エラーハンドリング

try:
    with open('missing.txt', 'r', encoding='utf-8') as f:
        content = f.read()
except FileNotFoundError:
    print('ファイルが見つかりません')

まとめ

Pythonでのファイル操作は、withステートメントを使用して安全に行うことが重要です。読み込み(r)、書き込み(w)、追記(a)の各モードを適切に使い分けることで、効率的なファイル処理が可能になります。

■プロンプトだけでオリジナルアプリを開発・公開してみた!!

■AI時代の第一歩!「AI駆動開発コース」はじめました!

テックジム東京本校で先行開始。

■テックジム東京本校

「武田塾」のプログラミング版といえば「テックジム」。
講義動画なし、教科書なし。「進捗管理とコーチング」で効率学習。
より早く、より安く、しかも対面型のプログラミングスクールです。

<短期講習>5日で5万円の「Pythonミニキャンプ」開催中。

<月1開催>放送作家による映像ディレクター養成講座

<オンライン無料>ゼロから始めるPython爆速講座