Holen Sie das nächste Element beim Radfahren durch eine Liste

li = [0, 1, 2, 3]

running = True
while running:
    for elem in li:
        thiselem = elem
        nextelem = li[li.index(elem)+1]

Wenn diese erreicht das Letzte element, eine IndexError ausgelöst wird (wie ist der Fall für jede Liste, Tupel, Wörterbücher, oder string, iteriert wird). Eigentlich möchte ich an diesem Punkt für nextelem gleich li[0]. Meine eher umständliche Lösung war

while running:
    for elem in li:
        thiselem = elem
        nextelem = li[li.index(elem)-len(li)+1]   # negative index

Gibt es einen besseren Weg, dies zu tun?

InformationsquelleAutor der Frage | 2010-01-30

Schreibe einen Kommentar