Как я могу сравнить текущее время со следующими 10 секундами? - PullRequest
0 голосов
/ 27 марта 2020

Как я могу сравнить текущее время со следующими 10 секундами?

Например, в текущее время, я отправляю сообщение брокеру mqtt, а затем в следующие 10 secs автоматически опубликует сообщение в mqtt брокере.

Ответы [ 2 ]

0 голосов
/ 27 марта 2020

Если вы не хотите использовать sleep, сравните текущее значение now с вашим временем запуска + 10 секунд. Внутри l oop вы можете делать практически все, что захотите.

from datetime import datetime,timedelta


start_the_clock = datetime.now()
print ('now it is',start_the_clock)
end_the_clock = start_the_clock+timedelta(seconds=10)
print ('we will end at',end_the_clock)
ticker = r'\|/-'
t = 0
while datetime.now() < end_the_clock:
    print ('waiting... '+ticker[t & 3], end='\r')
    t += 1
print ('\nDone waiting at',datetime.now())
0 голосов
/ 27 марта 2020

Я не совсем понял ваш вопрос. Но я думаю, что вы хотите сделать что-то сейчас и сделать это в течение следующих 10 секунд. Если это то, что вы хотите, то

import time
print("Do something")
time.sleep(10)
print("Do something")

или если вы хотите, чтобы это делалось непрерывно, то:

import time
i = 0
while i < 10: #Using while loop for readability
    print("Do something")
    i = i + 1 # You can use i += 1 or i++
    time.sleep(10)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...