Python 3.14+fnmatchфункция
fnmatch.filterfalse()
шаблоны имён файлов
Обратная к filter(): список имён, которые НЕ подходят под шаблон (3.14+).
Синтаксис
fnmatch.filterfalse(names, pat)
До 3.14 такой функции нет, и отбрасывание по маске писали циклом с not fnmatch(). Как и filter(), возвращает список, а не ленивый итератор, хотя называется как itertools.filterfalse, и учитывает регистр по правилам ОС. Удобна, чтобы выкинуть служебные файлы: filterfalse(names, '*.pyc').
Примеры
import fnmatch
names = ['a.py', 'a.pyc', 'b.py', 'b.pyc']
kept = fnmatch.filterfalse(names, '*.pyc')
print(kept, type(kept).__name__) # → ['a.py', 'b.py'] list
См. также
Открыть в полном глоссарииdocs.python.orgСообщить о неточности