@nihi1ist

Как проверить является ли элемент итерации каталогом?

Имеется абсолютный путь до каталога:
path = "C:/Users/user/PycharmProjects/basic"
Хочу перебрать элементы каталога и определить, какой элемент файл, а какой папка.
for element in os.listdir(path):
    if os.path.isdir(element):
        print(f'{element} - Это директория')
    else:
        print(f'{element} - Это не директория')

Но даже те элементы, которые являются каталогами, по условию проходят как не каталоги. Что я делаю не так?
  • Вопрос задан
  • 79 просмотров
Решения вопроса 1
iggor-markin
@iggor-markin
Python Developer
Методу isdir() нужен полный путь. Исходный вариант будет работать только для каталога, в котором лежит скрипт. Так будет работать:
import os

path = '..'
for element in os.listdir(path):
    if os.path.isdir(os.path.join(path, element)):
        print(f'{element} - Это директория')
    else:
        print(f'{element} - Это не директория')
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы