Скрипт для поиска файла по шаблону

255 просмотра
0
0 Комментариев

import os, fnmatch
 
dirpath = input('Путь к каталогу: ')
while not os.path.isdir(dirpath): #проверка пути
    print('Такого каталога нет')
    dirpath = input('Путь к каталогу: ')
 
filename = input('Имя файла: ')
 
path_f = []
for d,dirs,files in os.walk(dirpath):
    for f in files:
        if fnmatch(f, filename):
            path = (os.path.join(d, f))
            path_f.append(path)

Программа выдаёт:

if fnmatch(f, filename):

TypeError: ‘module’ object is not callable


Добавить комментарий

1 Ответы

Python Опубликовано 16.12.2018
0

Вы импортируете модуль fnmatch и пытаетесь использовать его как функцию.

Вам нужно либо импортировать из модуля fnmatch именно функцию fnmatch вот так:

import os
from fnmatch import fnmatch

Либо, оставив такой импорт, как у вас есть, использовать полное имя функции:

...
if fnmatch.fnmatch(f, filename):
    ...

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up