Прокрутите все файлы CSV в папке
Я пытаюсь пропустить только файлы csv в папке, содержащей много видов файлов и много папок, я просто хочу, чтобы она отображала все .csv файлы в этой папке.
Вот что я имею в виду:
import os, sys
path = "path/to/dir"
dirs = os.listdir(path)
for file in dirs:
if file == '*.csv':
print file
Я знаю, что в python нет подстановочной переменной, но есть ли способ сделать это?
Ответы
Ответ 1
Python предоставляет glob
, который должен делать это
>>> import glob
>>> glob.glob('/path/to/dir/*.csv')
Возвращает возможно пустой список имен путей, которые соответствуют имени пути, который должна быть строка, содержащая спецификацию пути. pathname может быть либо абсолютный (например,/usr/src/Python-1.5/Makefile), либо относительный (например,.. /../Tools//.gif) и может содержать подстановочные знаки в стиле оболочки. Сломанный Символьные ссылки включены в результаты (как в оболочке).
Ответ 2
Используйте модуль glob: http://docs.python.org/2/library/glob.html
import glob
path = "path/to/dir/*.csv"
for fname in glob.glob(path):
print(fname)