Я пытаюсь использовать регулярное выражение в Python, чтобы сопоставить файл (сохраненный в виде строки, т.е. "/volumes/footage/foo/bar.mov") с файлом журнала, который я создаю, который содержит список файлов. Но когда я запускаю скрипт, он выдает мне эту ошибку: sre_constants.error: unbalanced parenthesis
. Код, который я использую, это:
Чтобы прочитать файл:
theLogFile = The_Root_Path + ".processedlog"
if os.path.isfile(theLogFile):
the_file = open(theLogFile, "r")
else:
open(theLogFile, 'w').close()
the_file = open(theLogFile, "r")
the_log = the_file.read()
the_file.close()
Затем внутри цикла for
я переназначаю (я не понимал, что делаю это, пока не опубликовал этот вопрос) переменную the_file
как строку из списка файлов (полученную при запуске через папку и ее подмножеств и захватывает все имена файлов), затем попробуйте использовать регулярное выражение, чтобы увидеть, присутствует ли это имя файла в файле журнала:
for the_file in filenamelist:
p = re.compile(the_file, re.IGNORECASE)
m = p.search(the_log)
Каждый раз, когда он попадает в часть кода re.compile()
, он выдает эту ошибку. И если я попытаюсь вырезать это и использовать re.search(the_file, the_log)
, он все равно выплевывает эту ошибку. Я не понимаю, как я мог получить несбалансированные скобки из этого.