Я относительно новичок в Python и пытаюсь разработать функцию, которая работает более или менее как датчик парковки в автомобиле.
То есть: код получает некоторые входные данные датчика, и в режиме реального времени создается звуковой сигнал, период ожидания между двумя звуковыми сигналами которого обратно пропорционален величине сигнала (т. Е. Когда близкие звуковые сигналы находятся близко друг к другу) и наоборот).
Я попытался создать цикл while, включающий winsound.beep () и паузу. Продолжительность паузы будет рассчитываться с использованием входа датчика. Однако даже при выполнении нескольких строк простого кода цикл while кажется асинхронным, и паузы не распределяются равномерно.
Я попытался поместить код в отдельный поток, но это не решило проблему.
Я включу здесь код, чтобы просто выполнить повторный звуковой сигнал, не принимая никаких входных данных для устранения неполадок оттуда.
from time import sleep
import winsound
while True:
winsound.Beep(1500,100)
sleep(0.05)
Я ожидаю, что выходной сигнал будет согласованным звуковым сигналом с интервалом 0,05 с, но фактический выходной сигнал - асинхронный звуковой сигнал с паузами, изменяющимися со временем.