Programme aufteilen

Wenn du eine Aufgabe stellst, willst du meist nicht, dass über der eigentlichen Frage noch sechs Zeilen Vorbereitung stehen. Dafür gibt es eine Zeile, die mit #--- beginnt: Sie teilt dein Programm in Abschnitte.

Die Regel

Eine Zeile ab #--- beginnt einen neuen Abschnitt. Steht ein Name dahinter, wird der Abschnitt auswählbar. Steht keiner dahinter, beginnt ab dort der sichtbare Teil.

Alles vor dem ersten Trenner ist die Präambel. Sie läuft immer mit, egal welcher Abschnitt gerade gewählt ist — dort gehören die Importe hin.

Ein Trenner

Was darüber steht, wird eingeklappt. Der sichtbare Teil beginnt wieder bei Zeile 1.

from kara import *
world("""####
#@.#
####""")
#---
while not treeFront():
    move()

Mehrere Ausgangslagen

Gibst du Trennern Namen, entstehen Reiter über dem Editor. Der sichtbare Teil bleibt beim Wechseln stehen — so probierst du dasselbe Programm an mehreren Situationen aus.

from kara import *

#--- Gerade
world("""#####
#@ .#
#####""")

#--- Um die Ecke
world("""#####
#@  #
#  .#
#####""")

#---
while not treeFront():
    move()

Gut zu wissen

  • Es bleibt echtes Python. #--- ist ein gewöhnlicher Kommentar. Kopierst du dein Programm in eine .py-Datei, läuft es. Bei mehreren Abschnitten laufen sie nacheinander, der letzte gewinnt.
  • Eingeklappt heißt nicht versteckt. Ein Klick auf den grauen Balken zeigt die Vorbereitung. Sie dient der Übersicht, nicht der Geheimhaltung.
  • Vergisst du den letzten Trenner — den ohne Namen — wird gar nichts eingeklappt und du siehst dein ganzes Programm. Lieber zu viel zeigen als zu wenig.
  • Angehängte Striche sind erlaubt: #--- Gerade --- geht genauso wie #--- Gerade.