EDIT:
Спасибо, Итан, я ценю твой конструктивный совет.
Я написал небольшой скрипт, который должен делать то, что вы хотите:
import datetime
import time
wanted_day = 'thursday'
wanted_time = 8
list = [['monday', 0],['tuesday', 1],['wednesday', 2],['thursday', 3],['friday', 4],['saturday', 5],['sunday', 6]]
for i in list:
if wanted_day == i[0]:
number_wanted_day = i[1]
# today delivers the actual day
today = datetime.datetime.today().weekday()
# delta_days describes how many days are left until the wanted day
delta_days = number_wanted_day - today
# time delivers the actual time
time = time.localtime(time.time())
if wanted_time > time[3]:
delta_hours = wanted_time - time[3]
delta_mins = 59 - time[4]
delta_secs = 59 - time[5]
else:
delta_days = delta_days - 1
delta_hours = 23 - time[3] + wanted_time
delta_mins = 59 - time[4]
delta_secs = 59 - time[5]
print [delta_days, delta_hours, delta_mins, delta_secs]
Выходные данные выглядят так:
[2, 21, 3, 49]
2 - количество дней, 21 - количество часов, 3 - количество минут и 49 - количество секунд (я использовал четверг 8 утра как желаемое время).
Вам просто нужно ввести время в формате 0-23, с am и pm вам нужно будет немного его адаптировать