Как найти файлы с определенными условиями в их имени?

Есть целая тонна файлов вида ot-2020-01-01.txt В каждом названии файла есть его дата. Так вот, как можно найти и записать в массив имена файлов, отдавая диапазон дат "с даты - по дату"? Например методом input()

На данный момент мой код выглядит так и он записывает в массив все названия файлов в этой папке. далее я их объединяю в один файл

ipmort os
path = "C:\files"
mylist = os.listdir(path)
with open('final.txt', 'w', encoding='utf-8') as outfile:
   for fname in mylist:
       with open(fname, encoding='utf-8') as infile:
           for line in infile:
               outfile.write(line)

Ответы (2 шт):

Автор решения: Oleg Grishko

только начал изучать python, так что не обессудьте... как по мне можно список дат из периода загнать в массив, а потом в цикле по каждой дате отфильтровать файлы

import os
import datetime

a = datetime.date(2020, 11, 1)
b = datetime.date(2020, 12, 7)
one_day = datetime.timedelta(1)

day = a
dates = []

while day <= b:
    dates.append(str(day))
    day += one_day

path = "d:\\tmp"
mylist = os.listdir(path)
for date in dates:
    print(date + ':')
    result_filter = filter(lambda x: x.endswith(date+'.txt'), mylist)
    for fname in result_filter:
        print(fname)
→ Ссылка
Автор решения: Farid

Нашел ответ, если кому-то интересно

from pathlib import Path

date1 = '2020-11-01'
date2 = '2020-12-17'

files = [path.name for path in Path('C:\files').glob('ot-*.txt') if f'ot-{date1}.txt' <= path.name <= f'ot-{date2}.txt']
→ Ссылка