Чтобы найти все файлы в каталоге по расширению в Python, вы можете использовать различные методы. Вот несколько подходов:
Метод 1: использование модуля glob
import glob
def find_files_by_extension(directory, extension):
pattern = f"{directory}//*.{extension}"
files = glob.glob(pattern, recursive=True)
return files
# Example usage:
directory = "/path/to/directory"
extension = "txt"
files = find_files_by_extension(directory, extension)
print(files)
Метод 2: использование модуля os
import os
def find_files_by_extension(directory, extension):
files = []
for root, _, filenames in os.walk(directory):
for filename in filenames:
if filename.endswith(f".{extension}"):
files.append(os.path.join(root, filename))
return files
# Example usage:
directory = "/path/to/directory"
extension = "txt"
files = find_files_by_extension(directory, extension)
print(files)
Метод 3: использование модуля pathlib
import pathlib
def find_files_by_extension(directory, extension):
path = pathlib.Path(directory)
files = path.glob(f"/*.{extension}")
return [str(file) for file in files if file.is_file()]
# Example usage:
directory = "/path/to/directory"
extension = "txt"
files = find_files_by_extension(directory, extension)
print(files)
Эти методы найдут все файлы с указанным расширением в заданном каталоге и его подкаталогах. Обязательно замените "/path/to/directory"фактическим путем к каталогу, в котором вы хотите выполнить поиск, а "txt"желаемым расширением файла.п>