Pythonでディレクトリを作成・削除・一覧表示する方法!初心者向けにosとpathlibを使った使い方を解説
生徒
「Pythonでフォルダを作ったり、削除したりってできますか?」
先生
「はい、Pythonではosモジュールやpathlibモジュールを使って、フォルダ(ディレクトリ)の作成や削除、一覧の取得などが簡単にできますよ。」
生徒
「フォルダって、よくパソコンで作るアレですよね?Pythonでできるって便利そう!」
先生
「そうです。初心者の方でもわかるように、やさしく順番に説明していきますね。」
1. ディレクトリ(フォルダ)とは何か?
まず、ディレクトリとはパソコン上の「フォルダ」のことです。ファイルを整理して入れておく箱のようなもので、「写真」「書類」などの名前が付いたフォルダを見たことがあると思います。
Pythonではこのフォルダのことを「ディレクトリ」と呼び、作ったり消したり中身を見たりすることができます。
2. osモジュールでディレクトリを作成する方法
osモジュールを使えば、簡単にフォルダを作成できます。まずはos.mkdir()という関数を使ってみましょう。
import os
os.mkdir("test_folder")
このコードを実行すると、現在の場所(カレントディレクトリ)に「test_folder」という名前のフォルダが作られます。
3. pathlibモジュールを使ったディレクトリ作成
Python3.4以降ではpathlibモジュールも使えます。より直感的に書けるのが特徴です。
from pathlib import Path
Path("test_folder2").mkdir()
Pathクラスはファイルやフォルダの操作を分かりやすくしてくれます。初心者にもおすすめの書き方です。
4. ディレクトリがすでにある場合の対処法
すでに同じ名前のフォルダがあると、エラーになります。そのため、作る前に存在するかを確認するのが安全です。
folder = Path("sample_folder")
if not folder.exists():
folder.mkdir()
exists()は「そのフォルダが存在しているか」を確認する関数です。無ければmkdir()で作成します。
5. ディレクトリを削除する方法(osとpathlib)
フォルダを削除するには、os.rmdir()またはPath.rmdir()を使います。ただし、フォルダの中にファイルや他のフォルダがあると削除できません。
import os
os.rmdir("test_folder")
from pathlib import Path
Path("test_folder2").rmdir()
空のフォルダだけが対象です。中に何か入っている場合は先に削除しておく必要があります。
6. ディレクトリの中身(一覧)を取得する方法
フォルダの中にどんなファイルやフォルダがあるか調べるには、os.listdir()やPath.iterdir()を使います。
import os
files = os.listdir("sample_folder")
print(files)
from pathlib import Path
p = Path("sample_folder")
for item in p.iterdir():
print(item)
このようにすると、指定したフォルダの中にあるファイル名やフォルダ名が取得できます。
7. フォルダの有無や種類を確認する方法
Pathを使えば、ファイルなのかフォルダなのかを簡単に見分けることができます。
p = Path("sample_folder")
if p.exists():
if p.is_dir():
print("これはフォルダです。")
elif p.is_file():
print("これはファイルです。")
is_dir()はフォルダかどうか、is_file()はファイルかどうかを判定します。
8. 応用:フォルダがなければ作る処理
よくあるのが、「フォルダが無ければ作成しておく」という処理です。これでエラーを防ぎながらプログラムを安全に動かせます。
output_dir = Path("output")
if not output_dir.exists():
output_dir.mkdir()
print("フォルダを作成しました。")
else:
print("すでにフォルダは存在しています。")
このように書くことで、Python初心者でも安全なディレクトリ操作ができるようになります。