python 存在するフォルダやファイルの一覧を取得する

pythonで、os.listdir関数を使って、存在するフォルダやファイルの一覧を取得するサンプルコードを記述してます。pythonのバージョンは3.8.5を使用してます。
環境
- OS windows10 pro 64bit
- python 3.8.5
フォルダやファイルの一覧を取得
os.listdir関数を使用すれば、フォルダやファイルの一覧を取得することが可能です。
import os
# カレントディレクトリある一覧を取得
print(os.listdir("./"))
# ['foo', 'foo.txt', 'sample.py']
フォルダ構成

条件を指定してフォルダやファイルの一覧を取得
条件を指定して取得したい場合は「glob」を使用します。
fooフォルダ配下の全ての拡張子が「.txt」のものを取得するには、「ワイルドカード*」を利用します。
import glob
for name in glob.glob('./foo/*.txt'):
print(name)
# ./foo\bar.txt
# ./foo\foo.txt
# ./foo\test.txt
fooファルダ構成

「t」から始まるフォルダやファイルのみを取得するには「t*」とします。
import glob
for name in glob.glob('./foo/t*'):
print(name)
# ./foo\test.docx
# ./foo\test.txt
ファイル名が3文字のもので拡張子が「.txt」のもののみを取得する場合は、
「???.txt」とします。
import glob
for name in glob.glob('./foo/???.txt'):
print(name)
# ./foo\bar.txt
# ./foo\foo.txt
全てのフォルダやファイル一覧を、再帰的に取得する場合は、「recursive=True」を使用して、パスに「 ** 」を付けます。
import glob
print( glob.glob("./foo/**", recursive=True) )
# ['./foo\\', './foo\\bar', './foo\\bar\\hoge', './foo\\bar\\hoge\\hoge.txt', './foo\\bar.txt', './foo\\foo.txt', './foo\\test.docx', './foo\\test.txt']
fooファルダ構成

-
前の記事
Ruby 配列の値をランダムに1つ抽出する 2021.02.06
-
次の記事
javascript beforeで直前のノードにテキストや要素を追加する 2021.02.06
コメントを書く