Hier erkläre ich einige Dinge, die ich bisher noch nicht (genau) erklärt habe.
Verkettung von Zeilen
Wenn eine Zeile lang ist, kann es sinnvoll sein, sie in mehrere Zeilen aufzuteilen.
In solchen Fällen kann \
verwendet werden.
Setzen Sie keinen Zeichen nach \
.
(Beachten Sie insbesondere, dass Sie keine Leerzeichen nach \
einfügen.)
summation = 1 + 2 + 3 + 4 + 5 \
+ 6 + 7 + 8 + 9 + 10
Ausnahmsweise kann bei Klammern ein Zeilenumbruch bis zur schließenden Klammer eingefügt werden:
summation = (1 + 2 + 3 + 4 + 5
+ 6 + 7 + 8 + 9 + 10)
array = [
1, 2,
3, 4,
5
]
Obwohl dies keine gute Schreibweise ist, werden Zeilenumbrüche und
Einzüge zwischen (
und )
ignoriert, so dass Sie auch wie folgt
schreiben können:
# ! schlechte Schreibweise !
summation = (1 + 2 + 3 + 4 + 5
+ 6 + 7
+ 8 + 9 + 10)
Kodierungsstil
Der Kodierungsstil bezieht sich auf die detaillierten Regeln für das Schreiben eines Programms. Zum Beispiel, ob vier Leerzeichen oder zwei Leerzeichen für die Einzüge verwendet werden sollen. Dies hat keinen Einfluss auf das Ausführungsergebnis, beeinträchtigt aber die Lesbarkeit des Programms.
Wichtig ist, dass in einem einzigen Programm einheitliche Regeln eingehalten werden. Zum Beispiel ist
# ! schlechte Schreibweise !
if x < 0:
print("negative")
else:
print("zero or positive")
for i in range(10):
print(i)
grammatikalisch korrekt, aber sehr schwer zu lesen.
Anfänger neigen dazu zu denken, dass es ausreicht, wenn er/sie weiß, was er/sie geschrieben hat. Aber ein paar Tage später sind Sie sich selbst ein Fremder. Wenn Sie Ihr eigenes Programm später lesen, kommt es oft vor, dass Sie es nicht richtig verstehen, obwohl Sie es selbst geschrieben haben. Deshalb ist es wichtig, bewusst so zu schreiben, dass es für andere (und auch für Sie selbst) leicht zu verstehen ist.
In Python sind diese Regeln in PEP 8 (PEP steht für Python Enhancement Proposals) zusammengefasst. Obwohl sie nicht absolut sind, schreiben viele Python-Programmierer ihre Programme nach diesen Regeln. Lesen Sie sie, wenn Sie Lust dazu haben.
Wie man Fehlermeldungen liest
Angenommen, Sie schreiben das folgende Programm und führen es aus.
|
|
Sie erhalten dann die folgende Fehlermeldung (die Details können abweichen).
Traceback (most recent call last):
File "<exec>", line 11, in <module>
File "<exec>", line 8, in print_sum
File "<exec>", line 4, in sum3
UnboundLocalError: local variable 'summatio' referenced before assignment
Die unterste Zeile (hier UnboundLocalError: local variable 'summatio'
referenced before assignment
) ist der konkrete Fehler.
Hier heißt es, dass die Variable summatio
verwendet wurde, bevor der
Wert eingefügt wird (≈ es gibt keine solche Variable).
Was davor steht, ist die Reihenfolge der Ausführung bis zu diesem Punkt. Hier deutet dies darauf hin, dass
-
Zeile 11 (
print_sum(10)
) ausgeführt wurde, und -
Zeile 8 in
print_sum()
(s = sum3(n)
) ausgeführt wurde, und -
beim Ausführen der Zeile 4 in
sum3()
ein Fehler aufgetreten ist.
Das bedeutet, dass der Fehler in Zeile 4 von sum3()
liegt.
Daher sollten Fehlermeldungen in der Regel von unten nach oben gelesen werden.
Frühere Teile können wichtige Hinweise für die Fehlersuche in komplexen Programmen liefern, aber machen Sie sich vorerst nicht zu viele Gedanken darüber.