import datetime def lastSevenDays(dataLines, daysBack): """Filter records fewer than daysBack days old.""" day = datetime.date.today() day_delta = timedelta(days=1) for i in xrange(daysBack): daystr = str(day) day -= day_delta for line in dataLines: if daystr in line: yield line dataLines.remove(line) dataLines = list(lastSevenDays(dataLines, 7))