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 vr_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.

  • def definiert eine Funktion.

  • return sendet 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

function_name

Ein Name, den Sie Ihrer Funktion geben.

parameters

Optional. Variablen, die beim Funktionsaufruf Eingabewerte akzeptieren und so die Übergabe von Daten an die Funktion ermöglichen.

result

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 None zurück.

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.

# Define a function to display a message
def greeting():
    brain.print("Hello!")

def main():
    # Call the function to display the message
    greeting()

# VR threads — Do not delete
vr_thread(main)

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.

# Define a function with a parameter
def named_greeting(name):
    brain.print("Hello, " + name + "!")

def main():
    named_greeting("Stranger")

# VR threads — Do not delete
vr_thread(main)

Functions with Default Arguments#

Ein Standardargument ist ein Parameter, der einen Standardwert annimmt, wenn beim Funktionsaufruf für dieses Argument kein Wert angegeben wird.

# Define a function with a parameter and a default argument
def named_greeting(name = "Stranger"):
    brain.print("Hello, " + name + "!")

def main():
    # Use the default argument
    named_greeting()
    brain.new_line()
    # Change the parameter to a different name
    named_greeting("VR")

# VR threads — Do not delete
vr_thread(main)

Return Values from Functions#

Funktionen können Daten mithilfe des Schlüsselworts return an den Aufrufer zurücksenden. Dadurch können Sie die Ausgabe erfassen und in Ihrem Programm verwenden.

# Define a function that multiplies numbers by 2
def times_two(number):
    return number * 2

def main():
    # Display the return value
    brain.print(times_two(2))

# VR threads — Do not delete
vr_thread(main)

vr_thread#

Die VR-Thread-Funktion muss verwendet werden, um Funktionen auf globaler Ebene des Skripts aufzurufen.

Sie können jede zuvor erstellte Funktion nehmen und sie global an vr_thread() übergeben. Um ein Programm auszuführen, muss mindestens eine Funktion innerhalb dieser Funktion aufgerufen werden. Sie müssen nicht alle Funktionsaufrufe mit vr_thread()durchführen, sondern nur diejenigen, die global erfolgen.

Wenn mehr als ein Aufruf von vr_thread() erfolgt, werden die Funktionen parallel ausgeführt.

Die Funktionen werden im Allgemeinen in der Reihenfolge ihres Aufrufs ausgeführt. Wenn eine Funktion jedoch wartet, übergibt sie die Ausführung an die nächste Funktion und wird fortgesetzt, sobald die vorherige Funktion beendet ist oder auch diese wartet.

Usage:
vr_thread(function)

Parameter

Beschreibung

function

Der Name einer zuvor definierten Funktion.

# Define the function "main".
def main():
    drivetrain.drive_for(FORWARD, 400, MM)

# Call VR thread for any previously defined functions.
vr_thread(main)