python список файлов в папке
Чтобы узнать список файлов в папке с помощью python необходимо
- указать в какой папке ищем
- воспользоваться системной библиотекой os и ее функцией listdir пример, список всех файлов лежащих в папке content рядом с нашим скриптом, путь относительный
# -*- coding: UTF-8 -*-
from os import listdir
print listdir("content")
на выходе получаем ответ в виде списка языка python, для дальнейшей обработки вместо вывода на экран необходимо присвоить значение какой-либо переменной. Если в директории есть папки, то мы в этом списке получим и их. Если нужны только файлы их нужно отфильтровать, решения ниже
Пример 2 - список всех текстов файлов в текущей папке
# -*- coding: UTF-8 -*-
from os import listdir
files = listdir(".")
mytxt = filter(lambda x: x.endswith('.txt'), files)
print mytxt
В данном случае использовали относительный путь в виде одной точки указывающий на текущую директорию для скрипта. Пример 3. Использования функции isfile для отображения только файлов.
# -*- coding: UTF-8 -*-
from os import listdir
from os.path import isfile
from os.path import join as joinpath
mypath = "content"
for i in listdir(mypath):
if isfile(joinpath(mypath,i)):
print i
Если работаем в windows не забываем, что может потребоваться декодирование кириллических имен и путей с помощью функции .decode(‘cp1251’) или .encode(‘cp1251’)