Метод scandir модуля os
Метод scandir перебирает файлы и
подпапки, которые находятся в папке. В
параметре метода задаем путь к папке. Метод
возвращает объект os.DirEntry.
Синтаксис
import os
os.scandir(путь к директории)
Пример
Давайте узнаем структуру нашей директории:
import os
print(os.scandir('dir'))
В результате выполнения кода мы получим
объект os.DirEntry:
<nt.ScandirIterator object at 0x000001478707FF00>
Пример
Теперь давайте переберем полученный объект
циклом. Для того, чтобы освободить ресурсы
системы, после завершения цикла, необходимо
закрыть перебор с помощью метода scandir:
import os
for file in os.scandir('dir'):
print(file)
os.scandir('dir').close()
Результат выполненного кода:
<DirEntry 'dir1'>
<DirEntry 'file1.txt'>
<DirEntry 'file2.txt'>
Пример
Также мы можем вывести только имена файлов,
применив к полученного объекту атрибут name:
import os
for file in os.scandir('dir'):
print(file.name)
os.scandir('dir').close()
Результат выполненного кода:
dir1
file1.txt
file2.txt
Смотрите также
-
объект
DirEntryмодуляos,
который содержит итерируемые файлы и подпапки -
метод
getcwdмодуляos,
который возвращает текущий рабочий каталог -
метод
makedirsмодуляos,
который создает директорию -
метод
rmtreeмодуляshutil,
который рекурсивно удаляет папку -
метод
copytreeмодуляshutil,
который рекурсивно копирует папку -
метод
path.joinмодуляos,
который объединяет пути