from tkinter import *
import time
window = Tk()
window.title("Часы: Москва и Хабаровск")
# Делаем окно чуть больше и задаем общий фон
window.geometry("600x200")
window.configure(bg='#A8E4D7') # Цвет ментол для всего окна
# --- ФУНКЦИЯ РАСЧЕТА ВРЕМЕНИ ХАБАРОВСКА ---
def get_khabarovsk_time():
# Подсказка 1: Считываем только часы, минуты и секунды отдельно
hours = int(time.strftime('%H'))
minutes = time.strftime('%M')
seconds = time.strftime('%S')
# Подсказка 3: Разница 7 часов
new_hours = hours + 7
# Подсказка 4: Если часов стало 24 или больше, вычитаем 24
if new_hours >= 24:
new_hours -= 24
# Форматируем часы, чтобы было 05, а не 5
return f"{new_hours:02d}:{minutes}:{seconds}"
# --- ФУНКЦИЯ ОБНОВЛЕНИЯ ЧАСОВ ---
def update_time():
# 1. Время Москвы (системное время)
moscow_time = time.strftime('%H:%M:%S')
moscow_clock.config(text=moscow_time)
# 2. Время Хабаровска (наша функция)
khab_time = get_khabarovsk_time()
khab_clock.config(text=khab_time)
# Обновляем каждые 200 миллисекунд
window.after(200, update_time)
# --- СОЗДАНИЕ И ОФОРМЛЕНИЕ ЭЛЕМЕНТОВ ---
# Настройки шрифта
font_label = ('Comic Sans MS', 14, 'bold')
font_time = ('Comic Sans MS', 35, 'bold')
# Рамка для Москвы (чтобы визуально разделить)
frame_msk = Frame(window, bg='#A8E4D7')
frame_msk.pack(side=LEFT, expand=True, padx=20)
label_msk = Label(frame_msk, text="В Москве", font=font_label, bg='#A8E4D7', fg='#333333')
label_msk.pack(pady=(20, 0)) # Отступ сверху
moscow_clock = Label(frame_msk, font=font_time, bg='#A8E4D7', fg='black')
moscow_clock.pack()
# Рамка для Хабаровска
frame_khb = Frame(window, bg='#A8E4D7')
frame_khb.pack(side=RIGHT, expand=True, padx=20)
label_khb = Label(frame_khb, text="В Хабаровске", font=font_label, bg='#A8E4D7', fg='#333333')
label_khb.pack(pady=(20, 0))
khab_clock = Label(frame_khb, font=font_time, bg='#A8E4D7', fg='black')
khab_clock.pack()
# Запускаем обновление времени
update_time()
window.mainloop()