Я совершенно новый программист на Python, даже если я программист в C #, и я пытаюсь разработать часы реального времени, которые будут использоваться на дисплее для простого секундомера.
В C # onбазовый ПК, мне нужен только простой цикл, и это прекрасно работает.Но теперь я на Raspberry Pi 3 B +, и у меня возникают некоторые проблемы.
Это мой код:
if __name__ == '__main__':
try:
while True:
now = datetime.datetime.now()
if now.second != datetime.datetime.now().second:
print(now)
time.sleep(0.1)
except KeyboardInterrupt:
pass
Ожидаемый результат - новая строка каждую секунду, но это не так.'t:
2019-02-09 19:33:56.999996
2019-02-09 19:33:57.999999
2019-02-09 19:33:58.999998
2019-02-09 19:34:00.999989
2019-02-09 19:34:01.999999
2019-02-09 19:34:02.999999
2019-02-09 19:34:03.999994
2019-02-09 19:34:07.999989
2019-02-09 19:34:08.999998
2019-02-09 19:34:11.999993
2019-02-09 19:34:12.999993
2019-02-09 19:34:13.999993
Как вы можете видеть в 19.34.58, кажется, что он засыпает на секунду, а в 19.34.08 - на 3 секунды.
Есть лиЕсть ли способ избежать этого?
Проблема становится еще более заметной, если я пытаюсь перехватить прерывание GPIO: временная метка события иногда имеет задержку в 2 или 3 секунды.
Любое предложение?Спасибо