概要
PyFileSystem2 のリスト系のメソッドの使い分けに毎回混乱するのでメモしておく。
結論
| 階層辿るか | メソッド | 型 |
|---|---|---|
| - | listdir('.') |
list[ベース名] |
| - | scandir('.') |
Generator[Info] |
| - | glob('*') |
Generator[GlobMatch(path: フルパス, info: Info)] |
| 階層辿る | glob('**/*') |
Generator[GlobMatch(path: フルパス, info: Info)] |
| 階層辿る | walk.files() |
Generator[フルパス(fileのみ)] |
| 階層辿る | walk.dirs() |
Generator[フルパス(dirのみ)] |
| 階層辿る | walk.files(filter=['*']) |
Generator[フルパス(fileのみ)] |
| 階層辿る | walk.dirs(filter=['*']) |
Generator[フルパス(dirのみ)] |
| 階層辿る | walk.info(filter=['*']) |
Generator[tuple[フルパス(両方), Info]] |
-
Info:fileordirのオブジェクトInfoのクラスイメージ@dataclass class Info: name: str # ファイル or ディレクトリ の ベース名 is_file: bool is_dir: bool