File Utils¶
supervision.utils.file.list_files_with_extensions(directory: str | Path, extensions: list[str] | None = None) -> list[Path]
¶
List files in a directory with specified extensions or all files if no extensions are provided.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
|
str | Path
|
The directory path as a string or Path object. |
required |
|
list[str] | None
|
A list of file extensions to filter. Default is None, which lists all files. |
None
|
Returns:
| Type | Description |
|---|---|
list[Path]
|
A list of Path objects for the matching files. |
Examples:
>>> import supervision as sv
>>> from pathlib import Path
>>> import tempfile
>>> # Keep a reference to the directory object
>>> tmp_dir_obj = tempfile.TemporaryDirectory()
>>> tmpdir = tmp_dir_obj.name
>>> # Create test files
>>> (Path(tmpdir) / "test1.txt").touch()
>>> (Path(tmpdir) / "test2.md").touch()
>>> (Path(tmpdir) / "test3.py").touch()
>>> # List all files in the directory
>>> files = sv.list_files_with_extensions(directory=tmpdir)
>>> len(files)
3
>>> # List only files with '.txt' and '.md' extensions
>>> files = sv.list_files_with_extensions(
... directory=tmpdir, extensions=['txt', 'md'])
>>> len(files)
2