Проблемы с проверкой времени и отправкой сообщения

Как правильно сохранять время которое сейчас и проверять так пока не поменяется на 1 минуту вперед, и когда поменяется уже определенные действия: КОД:

while True:
    win32api.LoadKeyboardLayout('00000409', 1)  # меняет язык на англ.

    def pressed_key(e):
        res = e.name  # названия кнопки, например 'enter', 'caps lock' 
        if e.event_type == 'down':
            print(str(datetime.datetime.now().time())[:-10]) # узнаю время - вывод HH:MM


    keyboard.hook(pressed_key)
    keyboard.wait()

Нужно сделать чтобы когда поменялась минута, выполнить определенную функцию Если не поменялась то пропустить

Пример что мне нужно:

*нажимаю клавиши

Время 15:50

print("время не меняется")
...
*нажимаю клавишУ*

время 15:51

print("время поменялось")

*нажимаю ещё раз клавишу*

print("время не поменялось")

Ответы (2 шт):

Автор решения: FotonPC

Чтобы сравнивать время достаточно и минут:

import keyboard

from datetime import datetime

last_time = datetime.now().minute

def pressed_key(e):
    global last_time
    res = e.name  # названия кнопки, например 'enter', 'caps lock' 
    if e.event_type == 'down':
        print(':'.join(str(datetime.now()).split('.')[0].split(':')[:-1]))
        now_time = datetime.now().minute
        if now_time != last_time:
            print('Время поменялось!')
        else:
            print('Время не поменялось!')
        last_time = now_time


while True:
    win32api.LoadKeyboardLayout('00000409', 1)  # меняет язык на англ.
    keyboard.hook(pressed_key)
    keyboard.wait()
→ Ссылка
Автор решения: Kers

Попробуйте так: Если всю логику обернуть в класс.

import keyboard
import datetime

class ClassName():
    tm = "0"

    def __init__(self):
        keyboard.hook(self.pressed_key)
        keyboard.wait()

    def pressed_key(self, e):
        res = e.name  # названия кнопки, например 'enter', 'caps lock' 
        
        if e.event_type == 'down':
            tm_now = str(datetime.datetime.now().time())[:-10]
            if self.tm < tm_now:
                self.tm = tm_now
                print("Время ",tm_now)

            elif self.tm == tm_now:
                print("время не меняется")

ClassName()
→ Ссылка