07 Июл 2023
2 мин
500

Получение списка всех подкаталогов в текущем каталоге в Python

Часто в работе с файлами и каталогами на языке программирования Python возникает необходимость получить список всех подкаталогов в текущем каталоге.

Содержание

Часто в работе с файлами и каталогами на языке программирования Python возникает необходимость получить список всех подкаталогов в текущем каталоге. Это может быть полезно, например, при обходе директорий для анализа или обработки файлов. В Python есть несколько способов решения этой задачи.

Использование модуля os

Один из наиболее простых способов — использовать встроенный в Python модуль os. В этом модуле есть функция listdir(), которая возвращает список всех файлов и подкаталогов в указанной директории. Вместе с другой функцией этого модуля os.path.isdir(), которая проверяет, является ли указанный путь директорией, можно получить список всех подкаталогов в текущем каталоге.

Пример кода, который это делает, выглядит так:

import os

def get_subdirectories(directory):
    return [name for name in os.listdir(directory) if os.path.isdir(os.path.join(directory, name))]

print(get_subdirectories('.'))

В этом коде функция get_subdirectories() принимает в качестве аргумента путь к каталогу и возвращает список всех его подкаталогов.

Использование модуля glob

Еще один способ получить список подкаталогов — использовать модуль glob, который также входит в стандартную библиотеку Python. Этот модуль предоставляет функцию glob(), которая позволяет использовать шаблоны для поиска файлов и каталогов.

Пример использования этого модуля выглядит так:

import glob

def get_subdirectories(directory):
    return [name for name in glob.glob(directory + '/*/')]

print(get_subdirectories('.'))

Здесь функция get_subdirectories() также принимает в качестве аргумента путь к каталогу и возвращает список всех его подкаталогов. В этом случае для поиска подкаталогов используется шаблон '/*/', который соответствует любому подкаталогу в указанном каталоге.

Оба этих способа позволяют получить список подкаталогов в указанном каталоге. Выбор между ними зависит от конкретной задачи и предпочтений программиста.

Содержание

Добавить комментарий

Узнай профессию по рисунку