Не может быть сложно, но у меня психическое расстройство.
188
import os
os.listdir("path") # returns list
В одну сторону:
import os
os.listdir("/home/username/www/")
glob.glob("/home/username/www/*")
glob.glob
Выше метод не будет список скрытых файлов.
Так как я первоначально ответил на этот вопрос несколько лет назад, pathlib был добавлен в Python. Мой предпочтительный способ перечисления каталога теперь обычно включает iterdir
метод для Path
объектов:
from pathlib import Path
print(*Path("/home/username/www/").iterdir(), sep="\n")
.XYZ
в виду файлы в контексте файловой системы Unix), когда используется сglob.glob("/home/username/www/.*")
?['c:\\users']
glob.glob(r'c:\users\*')
(глобус, на самом деле он не перечисляет каталоги, но расширяет звездочки и тому подобное, что выполняет аналогичную задачу).os.walk
можно использовать, если вам нужна рекурсия:источник
glob.glob
илиos.listdir
сделаю это.источник
import glob
ENTERglob.glob(r'c:\users')
ENTER только кажется, чтобы вернуться['c:\\users']
. Это почему? Я хотел бы использовать glob.glob, потому что, как отмечали другие пользователи, он предположительно возвращает содержимое каталога, а также игнорирует скрытые файлы. Это важно.glob
:glob.glob(r'c:\users\*')
В
os
модуле ручки все прочее.источник
В Python 3.4+ вы можете использовать новый
pathlib
пакет:Path.iterdir()
возвращает итератор, который можно легко превратить вlist
:источник
Начиная с Python 3.5, вы можете использовать
os.scandir
.Разница в том, что он возвращает записи файлов, а не имена. В некоторых ОС, таких как Windows, это означает, что вам не нужно
os.path.isdir/file
знать, является ли это файл или нет, и это экономит процессорное время, потому чтоstat
это уже сделано при сканировании директории в Windows:Пример для вывода каталога и печати файлов размером больше
max_value
байтов:(прочитайте обширный мой ответ на основе производительности здесь )
источник
Ниже приведен список каталогов и файлов в каталоге. Другой - os.walk
источник