Pythonのglob
モジュールは、特定のパターンに一致するファイル名を取得するための便利なツールです。この記事では、glob.glob()
関数の戻り値とその順序について詳しく説明します。
glob.glob()の戻り値
glob.glob()
関数は、指定したパターンに一致するすべてのファイル名をリストとして返します。パターンは文字列で、パス仕様を含む必要があります。パス仕様は絶対パス(例:/usr/src/Python-1.5/Makefile
)でも相対パス(例:../../Tools/*/*.gif
)でも可能で、シェルスタイルのワイルドカードを含むことができます。
import glob
file = glob.glob('test/*.txt')
print(file)
上記のコードでは、test
ディレクトリ内の全ての.txt
ファイルを取得します。
glob.glob()の戻り値の順序
glob.glob()
関数の戻り値の順序は、デフォルトではOSに依存します。つまり、一部のOSでは結果がソートされますが、他のOSではソートされない場合があります。そのため、特定の順序でファイルを取得する必要がある場合は、戻り値を自分でソートすることをお勧めします。
import glob
file = sorted(glob.glob('test/*.txt'))
print(file)
上記のコードでは、glob.glob()
関数の戻り値をsorted()
関数を使用してソートします。
まとめ
Pythonのglob
モジュールは、特定のパターンに一致するファイル名を取得するための強力なツールです。しかし、glob.glob()
関数の戻り値の順序はOSに依存するため、特定の順序でファイルを取得する必要がある場合は、戻り値を自分でソートすることを忘れないでください。