カテゴリ: Python 更新日: 2026/01/06

Pythonで一時ファイルを作成・管理する方法!初心者でもわかるtempfileモジュール入門

Pythonで一時ファイルを作成・管理する方法(tempfileモジュール)
Pythonで一時ファイルを作成・管理する方法(tempfileモジュール)

先生と生徒の会話形式で理解しよう

生徒

「Pythonでファイルを一時的に使いたいとき、どんな方法がありますか?あとで消えてほしいんですけど…」

先生

「そういうときはtempfile(テンポラリファイル)モジュールを使うと便利ですよ。一時的なファイルやフォルダを作って、自動で削除もできます。」

生徒

「使い終わったら勝手に消えてくれるんですか?それは便利ですね!」

先生

「そうです。では初心者にもわかりやすく、一時ファイルの作成方法を丁寧に解説していきましょう。」

-

1. tempfileモジュールとは?

1. tempfileモジュールとは?
1. tempfileモジュールとは?

tempfileモジュールは、Pythonで一時的に使うファイルやフォルダを簡単に作成できる標準モジュールです。一時ファイルとは、プログラムの途中でデータを一時的に保存したいときに使われるファイルで、使い終わったら削除されるのが特徴です。

例えば、メールに添付するファイルを一時的に生成したいときや、大量のデータを一時的に保存しておく場面などで活躍します。

2. Pythonで一時ファイルを作る基本の書き方

2. Pythonで一時ファイルを作る基本の書き方
2. Pythonで一時ファイルを作る基本の書き方

一時ファイルを作るには、NamedTemporaryFileという関数を使います。名前付きの一時ファイルを作って、自動で消してくれます。


import tempfile

with tempfile.NamedTemporaryFile(mode='w+', delete=True) as tmp:
    tmp.write('一時ファイルに書き込みました')
    tmp.seek(0)
    print(tmp.read())

with文で使うことで、ブロックを抜けたときに自動で削除されます。mode='w+'は読み書き両方を意味し、seek(0)で読み出し位置を先頭に戻しています。

3. 一時ファイルの名前を確認する方法

3. 一時ファイルの名前を確認する方法
3. 一時ファイルの名前を確認する方法

一時ファイルにはシステムが自動で名前を付けますが、その名前を確認することもできます。


import tempfile

with tempfile.NamedTemporaryFile(delete=False) as tmp:
    print('ファイル名:', tmp.name)

tmp.nameを使うと、作られた一時ファイルのパス(場所と名前)がわかります。delete=Falseとすると、終了後もファイルが残ります。

4. 一時フォルダを作るには?TemporaryDirectoryの使い方

4. 一時フォルダを作るには?TemporaryDirectoryの使い方
4. 一時フォルダを作るには?TemporaryDirectoryの使い方

TemporaryDirectoryは、一時的なフォルダ(ディレクトリ)を作成するための関数です。フォルダの中に複数のファイルを保存したいときに使えます。


import tempfile
import os

with tempfile.TemporaryDirectory() as tmpdir:
    print('一時フォルダ:', tmpdir)
    filepath = os.path.join(tmpdir, 'sample.txt')
    with open(filepath, 'w') as f:
        f.write('一時フォルダ内のファイルです')

このように、TemporaryDirectoryを使えば、フォルダごと自動で削除されるのでとても便利です。

-

5. tempfileモジュールが使われる具体例

5. tempfileモジュールが使われる具体例
5. tempfileモジュールが使われる具体例

プログラミング初心者の方にもイメージしやすいよう、tempfileモジュールの活用例をいくつか紹介します。

  • 画像やCSVファイルを一時的に保存して、あとでメール添付やクラウド保存する
  • ファイルを受け取って中身だけ一時的に処理し、保存せずに削除する
  • 複数のファイルを一時フォルダにまとめて操作する

パソコンを触ったことがない人でも、これらは実際の現場でとても役立つ場面です。

6. 一時ファイルと通常ファイルの違い

6. 一時ファイルと通常ファイルの違い
6. 一時ファイルと通常ファイルの違い

通常のファイルは、自分で名前を決めて保存先も指定する必要がありますが、一時ファイルはPythonが勝手に名前も場所も決めてくれます。そして、使い終わったら自動的に削除されるのが大きな違いです。

ゴミ箱に捨てる手間もなく、安全に一時的な作業を進められるのがtempfileモジュールの魅力です。

7. WindowsとMac/Linuxでの違いは?

7. WindowsとMac/Linuxでの違いは?
7. WindowsとMac/Linuxでの違いは?

tempfileモジュールは、OS(オペレーティングシステム)によって一時ファイルの保存場所が異なりますが、Pythonが自動で最適な場所を選んでくれるため、気にせず使えます。

たとえば、WindowsならC:\Users\ユーザー名\AppData\Local\Tempなどに保存され、MacやLinuxなら/tmpフォルダが使われます。

8. tempfileモジュール使用時の注意点

8. tempfileモジュール使用時の注意点
8. tempfileモジュール使用時の注意点

便利なtempfileですが、以下の点には注意しましょう。

  • 大量に一時ファイルを作ると、ディスク容量を使ってしまうことがある
  • delete=Falseにした場合、ファイルは自動削除されないので手動で消す必要がある
  • ファイルの権限やアクセス制限によっては、作成に失敗することもある

とはいえ、with文を正しく使えば基本的に問題なく使えます。

9. tempfileで作ったファイルの中身を確認する方法

9. tempfileで作ったファイルの中身を確認する方法
9. tempfileで作ったファイルの中身を確認する方法

一時ファイルに書き込んだ内容を確認するには、通常のファイルと同じようにread()print()で確認できます。


import tempfile

with tempfile.NamedTemporaryFile(mode='w+', encoding='utf-8') as tmp:
    tmp.write('確認用のデータ')
    tmp.seek(0)
    print('中身:', tmp.read())

一時ファイルであっても、使い方は普通のファイルとほとんど同じです。

まとめ

まとめ
まとめ

tempfileモジュールで学んだ一時ファイル管理の考え方

ここまで、Pythonで一時ファイルや一時フォルダを安全かつ簡単に扱う方法として、tempfileモジュールの使い方を学んできました。 一時ファイルとは、プログラムの処理途中で一時的にデータを保存するための仕組みであり、処理が終わったあとに不要なファイルを残さない点が大きな特徴です。 特にPython初心者にとっては、ファイル削除の手間やミスを減らせる点が大きなメリットと言えます。

tempfileモジュールを使うことで、ファイル名や保存場所を自分で細かく指定する必要がなくなり、Pythonが自動的に最適な場所を選択してくれます。 そのため、WindowsやMac、Linuxといった異なる環境でも、同じコードで一時ファイル処理ができる点は、実務や学習の両面で非常に重要です。 OSごとの違いを意識せずに使えることは、Pythonの強みを実感できるポイントでもあります。

with文と自動削除の重要性

記事内で繰り返し登場したwith文は、一時ファイル管理において欠かせない書き方です。 with文を使うことで、処理が終わった瞬間にファイルやフォルダが自動的にクローズされ、不要なデータが残りません。 一時ファイルを手動で削除し忘れると、ディスク容量を圧迫したり、セキュリティ上の問題につながることもあります。 tempfileモジュールとwith文を組み合わせることで、そうしたトラブルを未然に防ぐことができます。

また、deleteオプションを理解することで、一時的にファイル名を確認したい場合や、処理後もファイルを残したいケースにも対応できます。 一時ファイルは必ず削除されるもの、という思い込みをせず、用途に応じた使い分けができるようになることが大切です。

一時フォルダを使う場面を理解する

TemporaryDirectoryを使った一時フォルダの作成は、複数ファイルをまとめて扱う場面で非常に便利です。 例えば、CSVファイルや画像ファイルを一時的に生成して加工する処理や、外部から受け取ったデータを一時保存して検証する場合などに役立ちます。 フォルダごと自動削除されるため、後片付けを意識せずにプログラムの本質的な処理に集中できます。

まとめとしてのサンプルプログラム


import tempfile
import os

with tempfile.TemporaryDirectory() as tmpdir:
    filepath = os.path.join(tmpdir, 'summary.txt')
    with open(filepath, 'w', encoding='utf-8') as f:
        f.write('まとめ用の一時ファイルです')
    with open(filepath, 'r', encoding='utf-8') as f:
        print(f.read())

このように、一時フォルダと一時ファイルを組み合わせることで、安全かつ読みやすいPythonコードを書くことができます。 初心者のうちからこの考え方に慣れておくことで、ファイル操作に対する不安が大きく減ります。

先生と生徒の振り返り会話

生徒

「tempfileモジュールを使うと、ファイルを作って消すまでを自分で管理しなくていいのが分かりました。 Pythonが自動でやってくれるので安心ですね」

先生

「その通りです。一時ファイルは便利な反面、管理を間違えるとトラブルになります。 だからこそ、with文とtempfileを組み合わせる書き方を覚えることが大切です」

生徒

「一時フォルダも使えるようになれば、複数のファイルを扱う処理も怖くなくなりそうです」

先生

「そうですね。Pythonのファイル操作は実務でもよく使われます。 今回学んだ一時ファイル管理の考え方は、これから先も必ず役に立ちますよ」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
PHP
PHPのCookieセキュリティを完全ガイド!初心者でもわかるSecureとHttpOnlyの使い方
New2
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
New3
PHP
PHPのSQLインジェクション対策を完全解説!初心者でも安全にデータベースを扱う方法
New4
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
Java&Spring記事人気No2
PHP
初心者向けPHPでMySQLからデータを取得する方法(SELECT文)完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのリストの重複を削除する方法を解説!初心者向けにsetとdict.fromkeysの使い方をやさしく説明
No.4
Java&Spring記事人気No4
PHP
PHPのXSS対策を完全ガイド!初心者でもわかる安全なWebアプリの作り方
No.5
Java&Spring記事人気No5
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.6
Java&Spring記事人気No6
PHP
PHPのOAuth認証をやさしく解説!Google・Facebookログインを初心者向けに実装しよう
No.7
Java&Spring記事人気No7
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
No.8
Java&Spring記事人気No8
PHP
PHPでZipファイルを作成・展開する方法を初心者向けに解説!ZipArchiveクラスを使った圧縮・解凍の基本
-
-