Не удается прикрутить проверку названий файлов на наличие русских символов
Есть небольшой инструмент для проверки изображений добавляемых в проект. Пытаюсь приделать к нему проверку названий этих изображений на наличие русских символов, но вне зависимости от того, есть ли они в названии, я ловлю сообщение из errors_log
def check_for_invalid_characters(urls, alphabet=set('абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ')):
errors_log = []
for i in urls:
if not i.endswith(".png"):
urls.remove(i)
array_names = make_names_from_urls(urls)
for i in array_names:
if alphabet.isdisjoint(array_names):
errors_log.append(f"{i} has invalid characters")
return errors_log
Ответы (2 шт):
Автор решения: Universall
→ Ссылка
Общие символы надо искать не с array_names, а с именем файла
if not alphabet.isdisjoint(i):
errors_log.append(f"{i} has invalid characters")
Автор решения: vadim vaduxa
→ Ссылка
def check_for_invalid_characters(urls):
urls[:] = [i for i in urls if i.endswith(".png")]
errors_log = [i for i in make_names_from_urls(urls) if re.search('[а-яА-ЯёЁ]', i)]
return errors_log