Для регулярного выражения вы должны использовать:
re.match(r'Run.*\.py$')
Краткое объяснение:
- . означает совпадение с любым символом.
- * означает совпадение с любым повторением предыдущего символа (следовательно, * означает любую последовательность символов)
- \ - это спасение от явной точки
- $ обозначает «конец строки», поэтому мы не совпадаем с «Run_foo.py.txt»
Однако для этой задачи вам, вероятно, лучше использовать простые строковые методы. то есть.
filename.startswith("Run") and filename.endswith(".py")
Примечание: если вы хотите, чтобы регистр не учитывался (т. Е. Соответствует «run.PY», а также «Run.py», используйте параметр re.I для регулярного выражения или конвертируйте в конкретный регистр (например, filename.lower ()) перед использованием строковых методов.