Heim > Artikel > Backend-Entwicklung > Was verwendet Python, um festzustellen, ob sich eine Operation in einer Verzweigungsstruktur befindet?
Python verwendet Einrückung, um zu bestimmen, ob sich der Vorgang in einer Zweigstruktur befindet. (Empfohlenes Lernen: Python-Video-Tutorial )
Einrückung in Python bestimmt den Geltungsbereich des Codes. Dies unterscheidet sich stark von herkömmlichem C/C++ (herkömmliches C/C++ verwendet geschweifte Klammern {} und Python verwendet eingerückte Leerzeichen).
Die Anzahl der Leerzeichen (Leerzeichen) am Anfang jeder Codezeile wird zur Berechnung der Einrückungsebene (Einrückungsebene) der Codezeile verwendet. Beachten Sie, dass ein Tabulator 8 Leerzeichen entspricht (Leerzeichen), und die Einrückungsebene ist 0, was bedeutet, dass keine Einrückungsleerzeichen vorhanden sind.Jede Anweisung in Python hat eine Einrückungsebene, und die Einrückungsebene wird mithilfe der Stapeldatenstruktur gespeichert.
Bevor mit dem Lesen der Datei begonnen wird, wird 0 (was die Einrückungsstufe 0 anzeigt, keine Einrückung) zuerst auf den Stapel verschoben. Lesen Sie dann jede Zeile des logischen Codes der Reihe nach vom Anfang bis zum Ende der Datei. Die Einrückungsebene jeder Zeile des logischen Codes wird mit dem Wert oben im Stapel verglichen. Wenn sie gleich sind, passiert nichts. Wenn er größer ist als der Wert auf dem Stapel. Wenn der oberste Wert größer ist, wird die Einrückungsebene der logischen Codezeile auf den Stapel verschoben und es wird eine Einrückungsmarkierung (INDENT LEVEL) erstellt Wenn er kleiner als der oberste Wert des Stapels ist, werden alle Einrückungsebenen im Stapel, die kleiner als die Logikcodezeile sind, auf den Stapel verschoben. Werte mit einer großen Codeeinrückungsebene werden entfernt vom Stapel entfernt, außerdem wird eine Erweiterungsmarkierung (DEDENT LEVEL) generiert.Das Folgende ist ein Beispiel für eine korrekte Einrückung:
def perm(l):#0 # Compute the list of all permutations of l if len(l) <= 1:# 1 return [l]# 2 r = []# 3 for i in range(len(l)):# 4 s = l[:i] + l[i+1:]# 5 p = perm(s)# 6 for x in p:# 7 r.append(l[i:i+1] + x)# 8 return r# 9
Das obige ist der detaillierte Inhalt vonWas verwendet Python, um festzustellen, ob sich eine Operation in einer Verzweigungsstruktur befindet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!