Funktionen#
Einführung#
Funktionen sind ein grundlegender Bestandteil der Python-Programmierung. Sie bündeln Codeabschnitte in wiederverwendbare, effiziente Codeblöcke, die jeweils eine bestimmte Aufgabe erfüllen. Funktionen können innerhalb eines Programms mehrfach aufgerufen werden, was die Codeorganisation vereinfacht und Code-Wiederholungen vermeidet. Zudem erleichtern Funktionen das Debuggen von Code.
Wichtig: Die Definition einer Funktion allein führt nicht zu deren Ausführung. Verwenden Sie start_thread, um eine Funktion in einem neuen Thread zu starten, sodass sie direkt zu Beginn des Projekts ausgeführt wird, anstatt auf ein Ereignis oder einen Callback zu warten.
defdefiniert eine Funktion.returnsendet die Ausgabe der Funktion zurück an das Hauptprogramm.
Verwendung:
def function_name(parameters):
# Code to execute when the function is called
return result # Optional, used to return a value
Parameter |
Beschreibung |
|---|---|
|
Ein Name, den Sie Ihrer Funktion geben. |
|
Optional. Variablen, die beim Funktionsaufruf Eingabewerte akzeptieren und so die Übergabe von Daten an die Funktion ermöglichen. |
|
Optional. Ermöglicht es der Funktion, ein Ergebnis an den Aufrufer zurückzugeben. Wenn eine Funktion keine return-Anweisung enthält, gibt sie standardmäßig |
Hinweis: Eine Funktion muss *immer vor ihrem Aufruf definiert werden.
Funktionen definieren und aufrufen#
Functions with No Parameters#
Wenn eine Funktion keine Eingabe benötigt, kann sie ohne Parameter definiert werden.
def greeting():
console.print("Hello!")
# Call the greeting function
greeting()
Functions with Parameters#
Sie können Funktionen auch Parameter hinzufügen, mit denen Sie der Funktion Informationen übergeben können, die sie zum Ausführen benötigt.
def move_square(moves):
for index in range(moves):
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
# Call the move_square function
move_square(4)
Functions with Default Arguments#
Ein Standardargument ist ein Parameter, der einen Standardwert annimmt, wenn beim Funktionsaufruf für dieses Argument kein Wert angegeben wird.
def move_square(moves=4):
for index in range(moves):
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
# Call the move_square function
move_square()
Return Values from Functions#
Funktionen können Daten an den Aufrufer zurücksenden, indem sie das Schlüsselwort return verwenden. Dadurch können Sie die Ausgabe erfassen und in Ihrem Programm weiterverwenden.
def times_two(number):
return number * 2
# Display the return value
console.print(times_two(2))
Thread starten#
start_thread startet eine Funktion in einem neuen Thread, sodass sie gleich zu Beginn des Projekts ausgeführt wird.
Wenn mehr als ein start_thread verwendet wird, werden die Funktionen gleichzeitig ausgeführt.
Usage:
start_thread(function)
Parameter |
Beschreibung |
|---|---|
|
Der Name einer zuvor definierten Funktion. |
def move_square():
# Move in a square path
while True:
drivetrain.drive_for(FORWARD, 150)
drivetrain.turn_for(RIGHT, 90)
def lights():
# Blink Optical Sensor lights
while True:
optical_sensor.set_light(LEDStateType.ON)
wait(0.5, SECONDS)
optical_sensor.set_light(LEDStateType.OFF)
wait(0.5, SECONDS)
# Start threads — Do not delete
start_thread(move_square)
start_thread(lights)