Dein Code.
Code: Alles auswählen
test = [1, 2, 3, 4]
for i in range(len(test)): # -> 0, 1, 2, 3
for j in range(i + 1, len(test)):
print('hier', j)
`test` ist fix, also könntest du das auch so schreiben.
Code: Alles auswählen
for i in range(4): # -> 0, 1, 2, 3
for j in range(i + 1, 4):
print('hier', j)
Im ersten Durchlauf der äußeren Schleife nimmt `i` den Wert `0` an. Damit hast du dann also für diesen Durchgang wenn man das `i + 1` in der zweiten Schleife ausrechnet:
`j` läuft also von 1 bis 3 (der Wert für das Ende der Schleife ist exklusiv, aber das scheint dir ja klar zu sein).
Ausgabe:
Danach beginnt die nächste äußere Schleife in der `i` den Wert 1 annimmt. Für die innere Schleife rechnen wir das `i + 1` wieder aus und erhalten 2.
`j` läuft also von 2 bis 3 und die Ausgabe ist folglich:
In der nächsten äußeren Schleife wird `i` dann 2. Für die innere Schleife heißt das dann:
Die Ausgabe ist
In der letzten folgenden äußeren Schleife erhält `i` den Wert 3. Und damit sieht die innere Schleife dann so aus.
Von 4 bis exklusive 4 gibt es keinen Wert. Die Schleife wird folglich nicht betreten und es gibt keine Ausgabe.
Noch detaillierter geht es wirklich nicht.