Einrückung
Das markanteste Merkmal von Python ist die Verwendung von Einrückungen zum Schreiben von Modulen. Nehmen wir unten die if-Auswahlstruktur als Beispiel. Auf if folgt eine Bedingung, und wenn die Bedingung wahr ist, werden einige zu if gehörende Anweisungen ausgeführt.
Sehen wir uns zunächst den C-Sprachausdruck an (beachten Sie, dass dies C ist, nicht Python!)
if ( i > 0 )
{
x = 1;
y = 2;
}
Diese Aussage bedeutet, dass wenn i>1, wir das tun, was in der enthalten ist Klammert zwei Zuweisungsoperationen ein.
Was in den Klammern enthalten ist, ist die Blockoperation, die angibt, dass die darin enthaltenen Anweisungen zu if gehören.
In Python sieht diese Passage aus demselben Grund wie folgt aus:
wenn i > 0:
x = 1
y = 2
In Python werden die Klammern um i > 0 entfernt, das Semikolon am Ende jeder Anweisung wird entfernt und die geschweiften Klammern, die Blöcke anzeigen, verschwinden ebenfalls.
Es gibt ein Extra: (Doppelpunkt) nach if... und einen Einzug von vier Leerzeichen vor x = 1 und y =2. Durch die Einrückung erkennt Python, dass diese beiden Anweisungen zu if gehören.
Der Grund, warum Python auf diese Weise entworfen wurde, ist sehr einfach, nur um das Programm gut aussehen zu lassen.
if-Anweisung
Wir schreiben ein vollständiges Programm mit dem Namen ifDemo.py. Dieses Programm wird zur Implementierung der if-Struktur verwendet.
i = 1
x = 1
wenn i > 0:
x = x 1
x drucken
$python ifDemo.py # Run
Wenn das Programm bis if ausgeführt wird, ist die Bedingung wahr, also x = x 1, wird ausgeführt.
Die print x-Anweisung ist nicht eingerückt, liegt also außerhalb des if.
Wenn der erste Satz in i = -1 geändert wird, dann gehört x = x 1 zu if, wenn ein falscher Wert (False) auftritt, und dieser Satz wird übersprungen. print x hat keine Einrückung, liegt außerhalb von if, überspringt nicht und setzt die Ausführung fort.
Diese Schreibweise, bei der vier Leerzeichen eingerückt werden, um die Zugehörigkeit anzuzeigen, werden wir in Zukunft wieder sehen. Python legt großen Wert auf die Lesbarkeit von Programmen. Die Anforderung, Einrückungen zu erzwingen, ermöglicht es Programmierern, saubere Programme zu schreiben.
Eine komplexere if-Auswahl:
i = 1
if i > 0:
print 'positive i'
i = i 1
elif i == 0:
print 'i is 0'
i = i * 10
else:
print 'negative i'
i = i - 1
print 'new i:',i
Hier gibt es drei Blöcke, jeweils führen mit if, elif, else.
Python erkennt die Bedingung von if als falsch, überspringt den folgenden Block und erkennt die Bedingung des nächsten elif, wenn sie immer noch falsch ist.
Durch die obige Struktur ist das Programm tatsächlich in drei Zweige unterteilt. Das Programm führt nur einen der drei Zweige abhängig von Bedingungen aus.
Das gesamte if kann in einer anderen if-Anweisung platziert werden, was die verschachtelte Verwendung der if-Struktur darstellt:
i = 5
if i > 1:
drucke 'i größer als 1'
drucke 'gut'
wenn i > 2:
drucke 'i größer als 2'
drucke 'noch besser'
if i > 2 Der folgende Block ist gegenüber dem if um vier Leerzeichen eingerückt, um anzuzeigen, dass er zum if und nicht zum äußeren if gehört.
Zusammenfassung
Der Doppelpunkt nach der if-Anweisung
ist mit vier Leerzeichen eingerückt, um die Zugehörigkeit anzuzeigen. In Python ist eine Einrückung nicht beliebig möglich
if :
Aussage
elif :
Aussage
elif :
Anweisung
sonst:
Anweisung