Соответствие пути файла в Python с учетом регистра - PullRequest
0 голосов
/ 08 марта 2019

У меня есть каталог с этим путем

Аль Фурджан / Аль Фурджан 2D 3D / 3D / AZIZI tulip / file.jpg

У меня есть другой CSV, из которого я создаю путь, и путь становится таким:

Аль Фурджан / Аль Фурджан 2D 3D / 3D / AZIZI Tulip / file.jpg

Путь, который я генерирую, имеет T капитал, но фактический каталог имеет small t . Как я могу решить эту проблему с Python, что он игнорирует чувствительность к регистру при поиске по путям.

1 Ответ

0 голосов
/ 08 марта 2019

Вы можете использовать сочетание fnmatch, re и os, чтобы сделать это:

import os
import fnmatch
import re

# translate the file name in a pattern
regex = fnmatch.translate('testit/testIT/testIT.txt')

# compile a case insensitive version of your this pattern
rec = re.compile(regex, re.IGNORECASE)

def listallfiles(path):
    for (dirpath, dirnames, filenames) in os.walk(path):
        for f in filenames:
            yield(os.path.relpath(os.path.join(dirpath, f)))

found = [i for i in listallfiles('.') if rec.match(i)] 

print(found)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...