Я пишу программу, которая сообщит мне, когда температура моего процессора превысит 70 градусов. Он отлично работает в терминале, но я хотел бы открыть его в окне Tkinter. Есть ли способ для Tkinter обновлять значение в окне каждый цикл из бесконечного цикла?
Я сделал это таким образом, но он останавливается после одного цикла.
Есть ли способ обновлять значение в окне каждый раз, не открывая новое окно Tkinter каждый цикл, пожалуйста?
from time import sleep
from gpiozero import CPUTemperature as temp
from gtts import gTTS
import os
from tkinter import *
vessel = ""
directory = '/home/pi/Desktop/Notifications'
files = 'Notifications/70.mp3'
window = Tk()
window.title("CPUの温度モニター")
def round():
CPUTemperature = temp()
CPUTemperature = CPUTemperature.temperature
return CPUTemperature
while True:
CPUTemp = round()
if CPUTemp == vessel:
continue
elif CPUTemp != vessel:
vessel = CPUTemp
lbl = Label(window, text=vessel)
lbl.grid(column=0, row=0)
window.mainloop()
print (vessel)
if vessel > 70:
path = os.path.exists(directory)
if path == False:
path = os.makedirs(directory)
if os.path.isfile(files):
os.system("mpg123 " + files)
sleep(5)
else:
tts = gTTS(text="警告。CPUの温度は70度を超えました", lang='ja')
tts.save(files)
os.system("mpg123 " + files)
sleep(5)
sleep(5)