Umwickeln auf eine Liste, wenn list index out of range

Ich bin auf der Suche für einige code-Verbesserungen, oder eine vorgefertigte version von dem, was ich habe umgesetzt mir, als ich denke, es könnte, oder sollte, ein sauberer Weg, das zu erreichen, was ich will.

Ich Schreibe ein Stück software zu konvertieren, guitar tabs, die in der klassischen notation, die ich brauche, um die Zahl zu konvertieren auf eine Registerkarte, um es den entsprechenden Hinweis, und es wäre nützlich für die Entwicklung einer Liste der einzelnen Zeichenfolgen Hinweis von den Start-string.

Habe ich eine Liste mit Notizen, (a - g#) und eine Liste von Bünde (0, 21).

Notes[Bund] funktioniert gut für die ersten elf Noten, aber nach, dass ich offensichtlich ein " out of index Fehlermeldung.

Den code habe ich um dieses hier:

notes = ["a", "a#", "b", "c", "c#", "d", "e", "f", "f#", "g", "g#"]
note = 21
while note >= len(notes):
    note -= 11
    try:
        print notes[note]
    except:
        continue

Es funktioniert, aber es scheint ein bisschen lang, gibt es einen besseren Weg, dies zu tun?

  • Sie sind nicht vergessen "d#" ? Wenn ja, mit '%' wie "notes[Hinweis: % len(notes)]" ein guter Weg zu gehen, da es automatisch korrigieren, ändern der Liste mit den Größen.
InformationsquelleAutor DasSnipez | 2014-03-02
Schreibe einen Kommentar