Несколько таймеров одновременно - PullRequest
0 голосов
/ 26 сентября 2018

РЕДАКТИРОВАТЬ: теперь я получаю сообщение об ошибке выполнения: «основной поток не находится в mainloop», когда второй таймер достигает 0 и вызывает функцию Note ()

from datetime import datetime
from threading import Timer
from tkinter import messagebox
import json


def Note():
    z = messagebox.showinfo("Note", note)

class Timers:
    def __init__(self,a,b,c,d,e):
        self.a = month
        self.b = day
        self.c = hour
        self.d = minute
        self.e = note
        x = datetime.today()
        y = x.replace(month=month, day=day, hour=hour, minute=minute, second=0, microsecond=0)
        delta_t = y - x
        secs = delta_t.seconds


        T = Timer(secs, Note)
        T.start()

1 Ответ

0 голосов
/ 26 сентября 2018

вы хотели бы использовать json для хранения списка объектов данных

def save_some_object(a,b,c):
    with open("some_file.txt","wb") as f:
         json.dump({'a':a,'b':b},f)

в вашем случае объект, который вы хотите сохранить, представляет собой LIST метаданных даты и времени

alarms_list = [{'час': 5, 'минута': 5, 'секунда': 0, 'день': 1, 'месяц': 1, 'год': 2019}, {'час': 6,'минута': 5, 'секунда': 0, 'день': 1, 'месяц': 1, 'год': 2021}]

, а затем вы можете сохранить их в свой файл

with open("some_file.txt","wb") as f:
     json.dump(alarms_list,f)

Вы можете загрузить свой список тревог также с помощью json

with open("some_file.txt","rb") as f:
     my_alarm_data_list = json.load(f)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...