Как выполнить задачу в другой функции только через N секунд n Python? - PullRequest
0 голосов
/ 29 мая 2020

Вот структура функции.

def my_main():
    ...... 
    function_a()
    function_b()
    ....

def function_a():
    ....
    time_diff = datetime.datetime.now() - last_execution_time 
    if time_diff.seconds > N:
        task_a
        last_execution_time = datetime.datetime.now()

my_main продолжает работать непрерывно и, если определенное условие удовлетворяет, запускает task_a в function_a. Я хочу выполнить task_a, скажем, только после N секунд его предыдущего выполнения, если он срабатывает до N секунд, он должен пройти беззвучно.

Основа c logi c состоит в том, чтобы поддерживать константу, которая продолжает измерять время, когда task_a была ранее выполнена, но из-за проблемы с областью видимости, когда выполнение переходит в main, переменная last_execution_time теряет свое значение, Кроме того, как вы инициализируете его в первый раз?

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