pythonでディレクトリの中にある全てのファイル名を取得する方法です。
使用する関数は、osライブラリのlistdir関数です。
import os
os.listdir('./')
必須の引数は、読み取りたいディレクトリパスです。
返り値は、ファイル名のリストです。
jupyterのファイルがあるディレクトリより1つ下の階層にあるディレクトリsampleの中にあるファイル名を読み取ります。
listdir、引数に、読み取りたいディレクトリパスを指定します。
実行します。
ディレクトリにあるファイル名が読み取れました。
file_list = os.listdir('./')
file_list
変数、イコール、listdirと使用することで、変数にファイル名のリストを代入することができます。
file_list.sort()
file_list
また、sortメソッドと合わせて使用すれば、ファイル名順に並べ替えたリストを作成することができます。
import glob
glob.glob('./sample/*.csv')
なお、listdirの似た関数として、glob(グロブ)関数があります。
この関数を使うと、指定した拡張子のファイル名を取得することができます。
csvファイルのみ取得してみましょう。
取得できました。
import glob
glob.glob('./sample/*')
このようにすればすべてのファイルを取得できます。
実行します。
これをを使用すると、同様にディレクトリにあるすべてのファイルを取得できます。
listdirはファイル名を指定できない一方で、ディレクトリは省いたファイル名のみ取得することができます。
また、listdirはファイル名のみ取得でき、globはファイル名にディレクトリもくっついたファイルパスで取得します。