Итак, мой проект состоит из попытки получить все данные из этого файла (data.txt) и фильтрации, чтобы найти значения за прошлую неделю, поэтому я использовал datetime.timedelta
, чтобы получить список со всеми датами текущего дня. и за 6 дней до этого, но когда я пытаюсь найти дату данных в файле и сравнить ее с датами в «списке последней недели», это не сработает, даже если они обе являются строками и оба находятся в тот же узор ГГ-ММ-ДД. Они идентичны, но всегда возвращает false. Это мой первый пост, так что, возможно, он немного сбивает с толку, но если бы вы могли мне помочь, было бы здорово.
Это то, что такое data.txt, он содержит продолжительность сеанса, время начала, время окончания и текущая дата сеанса.
0.6351542472839355;16:12:46.275692;16:12:46.910832;2020-07-08
0.24894213676452637;16:12:47.867543;16:12:48.116485;2020-07-08
0.2877843379974365;16:12:48.824725;16:12:49.112509;2020-07-08
200.29360198974609375;16:12:49.754576;16:12:50.048178;2020-07-08
200.25270724296569824;16:12:50.636086;16:12:50.888793;2020-07-08
3000.2298729419708252;16:12:51.469012;16:12:51.698880;2020-07-08
SESSION DURATION ; START TIME ; END TIME ; DATE
def last_week_hours():
today = date.today()
lastweekhours = 0
weeklist = []
for i in range(0,7):
wdate = today - timedelta(days=i)
weeklist.append(str(wdate))
db = open('data.txt', 'rt')
for line in db:
info = line.split(';')
sdate = info[3]
sduration = info[0]
if sdate in weeklist:
print('sdate is in weeklist')
lastweekhours += sduration