ファイル名・ディレクトリ名の一覧をリストで取得
ファイル名やディレクトリ名の一覧を取得するにはos.listdir()
を用いる。
目次
ファイル名とディレクトリ名の両方の一覧を取得 : os.listdir()
下記フォルダ構成を例として考える。
.
└── root_dir
├── dir1
├── dir2
├── file1.txt
├── file2.jpg
└── file3.png
ファイル名とディレクトリ名の両方のリストを取得する。
import os
path = "./root_dir"
files = os.listdir(path)
print(files) # ['dir1', 'dir2', 'file1.txt', 'file2.jpg', 'file3.png']
ファイル名のみの一覧を取得 : os.path.isfile()
files = os.listdir(path)
file_only_path = [f for f in files if os.path.isfile(os.path.join(path, f))]
print(file_only_path) # ['file1', 'file2.txt', 'file3.jpg']
ファイル名のみを取得したい時はos.listdir
に加えてos.path.isfile
を用いてファイル判定を行いパスを取得する
ディレクトリ名のみの一覧を取得 : os.path.isdir
ディレクトリ名のみを取得するときはos.path.isdir
を用いる。
files = os.listdir(path)
dir_only_path = [f for f in files if os.path.isdir(os.path.join(path, f))]
print(dir_only_path) # ['dir1', 'dir2']