sched.scheduler задерживается примерно на 0,375 с, хотя я ввожу разные значения - PullRequest
0 голосов
/ 15 июня 2019

Несмотря на то, что я ввожу разные значения bpm на входе, метроном продолжает нажимать со скоростью около 160 bpm. Модуль Pygame просто используется для воспроизведения звука Metro 1.wav. Используйте любой WAV-файл.

   import sched
   import time
   import contextlib
   with contextlib.redirect_stdout(None):
       import pygame

   bpm = int(input("bpm : "))
   sleep = float(60/bpm)  
   s = sched.scheduler(time.time, time.sleep)

   pygame.mixer.init() 
   tick1 = pygame.mixer.Sound("Metro 1.wav")


   def click():
       tick1.play()


   def metronome():
       print(bpm)
       while True:
           s.enter(sleep, 1, click())


   metronome()
...