Pythonディレクトリ・ファイル操作マスター:作成、移動、一覧、リネーム、削除
Pythonディレクトリとファイル管理
Pythonでディレクトリとファイルを効率的に作成、ナビゲート、一覧表示、リネーム、削除する方法を明確な実例で学びます。
動画:Python osモジュール
Pythonディレクトリ
プロジェクトが成長すると、コードを整理されたフォルダ構造にまとめることが不可欠になります。ディレクトリ(フォルダ)はファイルとサブディレクトリのコンテナであり、Pythonのosモジュールがそれらを管理する強力なツールを提供します。
カレントディレクトリの取得
os.getcwd()でカレントワーキングディレクトリを文字列として取得。バイト表現が必要ならos.getcwdb()を使用。
import os
os.getcwd() # 'C:\\Program Files\\PyScripter'
os.getcwdb() # b'C:\\Program Files\\PyScripter'
二重バックスラッシュはエスケープシーケンスを示します。print()を使うと正しくパスが表示されます:
print(os.getcwd()) # C:\Program Files\PyScripter
ディレクトリの変更
os.chdir(path)でカレントワーキングディレクトリを切り替え。path引数はフォワードスラッシュまたはバックスラッシュ両方使用可能;バックスラッシュはエスケープするかRaw文字列を使用してください。
os.chdir('C:\\Python33')
print(os.getcwd()) # C:\Python33
ディレクトリとファイルの一覧表示
os.listdir(path)で対象フォルダ内のすべてのファイルとサブディレクトリを取得。path省略時はカレントワーキングディレクトリで動作。
print(os.getcwd()) # C:\Python33
os.listdir() # ['DLLs', 'Doc', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'pythonw.exe', 'README.txt', 'Scripts', 'tcl', 'Tools']
os.listdir('G:\\') # ['$RECYCLE.BIN', 'Movies', 'Music', 'Photos', 'Series', 'System Volume Information']
新しいディレクトリの作成
os.mkdir(path)でフォルダ作成。相対パスの場合、カレントワーキングディレクトリ内に作成されます。
os.mkdir('test')
print(os.listdir()) # ['test']
ディレクトリまたはファイルのリネーム
同じos.rename(src, dst)関数でファイルもフォルダも処理可能。古い名前をsrc、新しい名前をdstに指定:
os.listdir() # ['test']
os.rename('test', 'new_one')
print(os.listdir()) # ['new_one']
ディレクトリまたはファイルの削除
ファイル削除はos.remove(path)。空フォルダ削除はos.rmdir(path):
os.listdir() # ['new_one', 'old.txt']
os.remove('old.txt')
print(os.listdir()) # ['new_one']
os.rmdir('new_one')
print(os.listdir()) # []
注意:os.rmdir()は空ディレクトリでのみ動作します。
ファイルやサブフォルダを含むフォルダを削除するには、shutilモジュールのshutil.rmtree()関数を使用:
os.listdir() # ['test']
os.rmdir('test') # Traceback (most recent call last): ... OSError: [WinError 145] The directory is not empty: 'test'
import shutil
shutil.rmtree('test')
print(os.listdir()) # []
Python
- Raspberry PiとPythonでリモート温度センサーを構築 – ステップバイステップガイド
- C++メモリ管理の極意:newとdeleteのエキスパート活用法
- Python キーワードと識別子: 予約語と命名規則をマスター
- Python 文・インデント・コメント: 明確なガイド
- Python 変数・定数・リテラル: 包括的ガイド
- Python 型変換とキャスト: 包括的ガイド
- Python I/Oとモジュールインポート完全マスター: 実践ガイド
- Python グローバル・ローカル・非ローカル変数を理解する
- Pythonにおける数値、型変換、数学のマスター
- Pythonエラーと組み込み例外をマスターする
- Pythonで現在の日付と時刻を取得する実践ガイド