Pythonでファイルやディレクトリの操作を行う際、日本語を含むパスを扱うことがあります。その際に役立つのがos
モジュールのlistdir
関数です。この記事では、その使い方について詳しく解説します。
osモジュールとは
os
モジュールはOSに依存しているさまざまな機能を利用できるモジュールで、主にファイルやパスの操作が可能です。os
モジュールを使用する場合は、Pythonのプログラムの先頭で os
モジュールをインポートする必要があります。
import os
os.listdirの使い方
os.listdir
関数は指定したパス内のファイルを一覧で取得する関数です。特定のフォルダ(ディレクトリ)以下のファイル名をまとめて取得したい時に使われます。
path = './dir'
list1 = os.listdir(path)
print(list1)
上記のコードは、'./dir'
ディレクトリ内のファイル・ディレクトリの一覧を取得し、それを表示します。
ファイルのみの一覧を取得
os.listdir
関数で取得した一覧から、ファイルのみを抽出したい場合は、os.path.isfile
関数を使用してファイルかどうか判定します。
path = './dir'
filelist = []
for f in os.listdir(path):
if os.path.isfile(os.path.join(path, f)):
filelist.append(f)
print(filelist)
上記のコードは、'./dir'
ディレクトリ内のファイルのみを取得し、それを表示します。
ディレクトリのみ取得する
os.listdir
関数でディレクトリのみ取得したい場合は、os.path.isdir
関数を使用します。
path = './dir'
dirlist = []
for f in os.listdir(path):
if os.path.isdir(os.path.join(path, f)):
dirlist.append(f)
print(dirlist)
上記のコードは、'./dir'
ディレクトリ内のディレクトリのみを取得し、それを表示します。
以上がPythonのos
モジュールのlistdir
関数の基本的な使い方です。これらの知識を活用して、Pythonでのファイル操作をより効率的に行いましょう。