Their initial values should be set only once at startup:
Code:
key_input = "C"
scale_input = "Major"
def shownew():
global key_input
global scale_input
for keys in NOTES_FLAT:
# rest of the code...
(Side note: the fretboard would display nicer using a monospace font:
https://i.imgur.com/OPcrUaI.png )[/QUOTE]
Thank you so much, it worked perfectly, I can't believe that two variable misplacement made me almost give-up.
You're right about monospace, but I intend to make the fretboard display notes as buttons now that the script is working.