Python ファイルディレクトリ操作

Jinku Hu 2023年1月30日 2020年1月1日
  1. Python でディレクトリを作成する
  2. Python で現在のディレクトリを取得
  3. Python でリストディレクトリ
  4. Python で作業ディレクトリを変更する
  5. Python でディレクトリの名前変更と削除
Python ファイルディレクトリ操作

Python では、ディレクトリで操作を実行する場合、os モジュールをインポートする必要があります。os モジュールの関数を使用して、ファイルおよびディレクトリの操作を行うことができます。

Python でディレクトリを作成する

mkdir() メソッドを使用して、新しいディレクトリを作成できます。ディレクトリを作成するパスを指定する必要があります。パスが指定されていない場合、ディレクトリは現在のディレクトリに作成されます。

>>> import os
>>> os.mkdir("PythonTutorials")

PythonTutorials という名前の新しいディレクトリが現在の作業ディレクトリに作成されます。

Python で現在のディレクトリを取得

getcwd() メソッドは現在の作業ディレクトリを取得するために使用され、

>>> import os
>>> print(os.getcwd())
C:\Users\HP\AppData\Local\Programs\Python\Python36-32

Python でリストディレクトリ

ファイルとサブディレクトリをリストするには、listdir() メソッドが使用されます。引数が指定されていない場合、Python スクリプトファイルのファイルとサブディレクトリがリストされます。入力パラメーターが指定されていない場合、Python スクリプトファイルのファイルとサブディレクトリが一覧表示されます。

>>> import os
>>> print(os.listdir())
['DLLs', 'Doc', 'get-pip.py', 'hello.py', 'include', 'Lib', 'libs', 'LICENSE.txt', 'NEWS.txt', 'python.exe', 'python3.dll', 'python36.dll', 'pythonw.exe', 'Scripts', 'tcl', 'Tools', 'vcruntime140.dll']
>>> print(os.listdir(r"C:\Program Files"))
['7-Zip', 'Common Files', 'Microsoft Office', 'Windows Sidebar']

Python で作業ディレクトリを変更する

現在の作業ディレクトリを変更するには、chdir() メソッドが使用されます。

>>> import os
>>> os.chdir("C:/Users/HP/Desktop/Code")
>>> print(os.getcwd())
C:\Users\HP\Desktop\Code

Python でディレクトリの名前変更と削除

ディレクトリの名前を変更する

rename() 関数を使用して、ファイルまたはディレクトリの名前を変更できます。

>>> import os
>>> os.rename("PythonTutorials", "Python")

上記の例では、PythonTutorials フォルダーの名前を Python に変更します。

ディレクトリを削除する

rmdir() メソッドを使用してディレクトリを削除できます。

>>> import os
>>> os.rmdir('Python')

Python システムからディレクトリを削除します。

Author: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.

LinkedIn