Распечатать фактическое время - PullRequest
0 голосов
/ 14 января 2020

Итак, мне нужно распечатать текущее время в моей программе (приложение Tkinter GUI), но я столкнулся с проблемой, когда он будет печатать только время, когда я запустил скрипт, а не обновлять текущее время. Так, например, мне нужно время начала и время окончания, но оба они становятся меткой времени, когда я запускал скрипт. Вот то, что я использую в настоящее время. Можно ли обновить переменные для отображения текущего времени без перезапуска скрипта?

now = datetime.now()
now2 = datetime.now()
current_time = ""
current_time2 = ""

current_time += now.strftime("%H:%M %p")
StartTime = current_time

current_time2 += now2.strftime("%H:%M %p")
EndTime = current_time2

1 Ответ

1 голос
/ 14 января 2020

Это было так много раз - вы должны использовать after() для периодического запуска функции, которая будет обновлять ее

import tkinter as tk
import time

# --- functions ---

def update_time():
    label['text'] = time.strftime('%Y.%m.%d  %H:%M:%S')

    # run update_time again after 1000ms (1s)
    root.after(1000, update_time) # function's name without `()`

# --- main ---

root = tk.Tk()

label = tk.Label(root)
label.pack()

# run update_time first time
update_time()

# start program
root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...