Fonctions#

Introduction#

Les fonctions sont un élément fondamental de la programmation Python. Elles permettent de regrouper des fragments de code en sections réutilisables et efficaces, conçues pour réaliser une tâche spécifique. On peut appeler une fonction plusieurs fois dans un programme, ce qui facilite l’organisation du code et évite les répétitions. Les fonctions simplifient également le débogage.

Important : Définir une fonction ne suffit pas à la faire s’exécuter. Utilisez vr_thread pour démarrer une fonction dans un nouveau thread afin qu’elle commence à s’exécuter immédiatement au début du projet, au lieu d’attendre un événement ou un rappel.

  • def définit une fonction.

  • La valeur return , ce qui permet de renvoyer la sortie de la fonction au programme principal.

Usage:

def function_name(parameters):
    # Code to execute when the function is called
    return result  # Optional, used to return a value

Paramètres

Description

function_name

Un nom que vous donnez à votre fonction.

parameters

Facultatif. Variables qui acceptent des valeurs d’entrée lors de l’appel de la fonction, permettant ainsi de transmettre des données à celle-ci.

result

Facultatif. Permet à la fonction de renvoyer un résultat à l’appelant. Si une fonction ne contient pas d’instruction de retour, elle renverra par défaut None.

Remarque : Une fonction doit toujours être définie avant d’être appelée.

Définition et appel de fonctions#

Functions with No Parameters#

Si une fonction ne nécessite pas d’entrée, vous pouvez la définir sans paramètres.

# 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#

Vous pouvez également ajouter des paramètres aux fonctions, ce qui vous permet de leur transmettre les informations nécessaires à leur fonctionnement.

# 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#

Un argument par défaut est un paramètre qui prend une valeur par défaut si aucune valeur n’est fournie lors de l’appel de fonction pour cet argument.

# 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#

Les fonctions peuvent renvoyer des données à l’appelant grâce au mot-clé return . Cela vous permet de récupérer et d’utiliser la sortie dans votre programme.

# 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#

La fonction VR Thread doit être utilisée pour appeler des fonctions au niveau global du script.

Vous pouvez utiliser n’importe quelle fonction que vous avez créée précédemment et la passer à vr_thread() au niveau global. L’exécution d’un programme nécessite l’appel d’au moins une fonction à l’intérieur de cette fonction. Il n’est pas nécessaire d’effectuer tous les appels de fonction avec vr_thread(), seulement ceux qui sont au niveau global.

Si plusieurs appels vr_thread() sont effectués, les fonctions s’exécuteront en parallèle.

En règle générale, les fonctions s’exécutent dans l’ordre de leur appel. Cependant, si une fonction est en attente, elle cède son exécution à la fonction suivante et reprend lorsque la première fonction a terminé son exécution ou lorsque la seconde fonction est également en attente.

Usage:
vr_thread(function)

Paramètre

Description

function

Le nom d’une fonction précédemment définie.

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

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