Wie funktioniert „range()“ intern?Python

Python-Programme
Anonymous
 Wie funktioniert „range()“ intern?

Post by Anonymous »

Wie unterscheidet range() den in diesem Fall getätigten Aufruf?

Beispiel:

Code: Select all

def ex():
list = [1,2,3,4]
for val in range(len(list)):
print(val)
break
for val in range(len(list)):
print(val)
break
Ausgabe -

Code: Select all

0
0
Kurz gesagt, meine Frage ist, warum die Ausgabe nicht auf diese Weise erfolgt?

Code: Select all

0
1
Während des ersten Aufrufs von range() in der „ersten for-Schleife“ lautet der Aufruf „range(len(list))“,
und beim ersten Aufruf von range() in der „zweiten for-Schleife“ lautet der Aufruf „range(len(list))“, was dem zweiten Aufruf von range() in der „ersten for-Schleife“ entspricht. Woher weiß range(), ob der Aufruf von der „zweiten for-Schleife“ und nicht von der „ersten for-Schleife“ kam?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post