我目前正在尝试制作一个程序,为小提琴演奏乐谱,并将给定的音符转换为弦上的某个位置,但我的问题是,当我问一个键是尖锐的还是扁平的,以及该键签名中有多少尖锐或扁平的部分时,我发现我在做一堆乏味的if/then语句,例如:
if keysig == sharp and signum == 2:
note['LE'] == 'D4'
note['SC'] == 'A4'
elif keysig == sharp and signum == 3:
note['LE'] == 'D5'
note['SC'] == 'G2'
你会发现,回头再做一个稍微改变的陈述会变得非常烦人。我怎样才能解决这个问题?你知道吗
对于那些不看乐谱的人: 基本上我想说的是,这个算法将记录用户输入的笔记,比如A,G,D,并将它们转换成小提琴手指板上的精确位置,这样你就不必手动搜索笔记了。这个节目是为小提琴初学者,缺乏经验,在阅读乐谱。你知道吗
你可以用字典:
它使用
(keysig, signum)
元组作为键,映射到特定的音符换位。如果找不到这样的签名,则不会进行更新(使用空字典进行更新)。你知道吗相关问题 更多 >
编程相关推荐