386 Stimmen

Schleife rückwärts mit Indizes in Python?

Ich versuche, eine Schleife von 100 bis 0. Wie mache ich das in Python?

for i in range (100,0) funktioniert nicht.

6voto

Andy T. Punkte 61

Eine andere Lösung:

z = 10
for x in range (z):
   y = z-x
   print y

Ergebnis:

10
9
8
7
6
5
4
3
2
1

Tipp: Wenn Sie diese Methode verwenden, um Indizes in einer Liste zurückzuzählen, sollten Sie -1 aus dem 'y'-Wert verwenden, da die Indizes Ihrer Liste bei 0 beginnen werden.

4voto

enoted Punkte 491

Die einfache Antwort zur Lösung Ihres Problems könnte so aussehen:

for i in range(100):
    k = 100 - i
    print(k)

4voto

Adhrit Punkte 31

Möglicherweise möchten Sie die reversed Funktion in Python. Bevor wir uns in den Code stürzen, müssen wir uns daran erinnern, dass die range Funktion gibt immer eine Liste zurück (oder ein Tupel, ich weiß es nicht). range(5) wird zurückgegeben [0, 1, 2, 3, 4] . Die reversed Funktion kehrt eine Liste oder ein Tupel um, so dass reversed(range(5)) wird sein [4, 3, 2, 1, 0] Ihre Lösung könnte also lauten:

for i in reversed(range(100)):
    print(i)

1voto

user2220115 Punkte 251

for var in range(10,-1,-1) Werke

1voto

Mike Punkte 19

Kurz und knapp. Das war meine Lösung, als ich den CodeAcademy-Kurs machte. Druckt eine Zeichenfolge in der Reihenfolge rev.

def reverse(text):
    string = ""
    for i in range(len(text)-1,-1,-1):
        string += text[i]
    return string

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X