import time
from picozero import Speaker
# creating a Speaker object
buzzer = Speaker(15)
def note(name):
octave = int(name[-1])
PITCHES = "c,c#,d,d#,e,f,f#,g,g#,a,a#,b".split(",")
pitch = PITCHES.index(name[:-1].lower())
return int(440 * 2 ** ((octave - 4) + (pitch - 9) / 12.))
sequence = [
("e5", 2), ("e5", 2), ("e5", 4), ("e5", 2), ("e5", 2), ("e5", 4),
("e5", 2), ("g5", 2), ("c5", 4), ("d5", 1), ("e5", 6), (None, 2),
("f5", 2), ("f5", 2), ("f5", 3), ("f5", 1), ("f5", 2), ("e5", 2),
("e5", 2), ("e5", 1), ("e5", 1), ("e5", 2), ("d5", 2), ("d5", 2),
("e5", 2), ("d5", 4), ("g5", 2), (None, 2),
("e5", 2), ("e5", 2), ("e5", 4), ("e5", 2), ("e5", 2), ("e5", 4),
("e5", 2), ("g5", 2), ("c5", 4), ("d5", 1), ("e5", 6), (None, 2),
("f5", 2), ("f5", 2), ("f5", 3), ("f5", 1), ("f5", 2), ("e5", 2),
("e5", 2), ("e5", 1), ("e5", 1), ("g5", 2), ("g5", 2), ("f5", 2),
("d5", 2), ("c5", 6), (None, 2)
]
for (notename, eigths) in sequence:
length = eigths
if notename:
buzzer.play(note(notename), length, 1, 1)
time.sleep(0.5)