Fonctions

Tout savoir sur les fonctions

  • Les bases : éléments nécessaires à la définition d'une fonction, souvent indispensables.
  • Les types : annotations facultatives mais utiles pour améliorer la lisibilité et la maintenance du code.
  • Les docstrings : documentation intégrée qui permet d'expliquer le rôle d'une fonction.
  • Les assertions : outils permettant de rendre les fonctions plus robustes en imposant des contraintes.

Les bases : arguments, paramètres, valeur de retour

Définition

Une fonction est un bloc de code qui réalise une tâche spécifique. Elle peut recevoir des arguments (les données passées à la fonction) et utiliser des paramètres (les noms des variables utilisées à l'intérieur de la fonction pour désigner ces arguments). Une fonction peut également renvoyer une valeur de retour à l'aide du mot-clé return.

Exemple

# Définition d'une fonction qui additionne deux nombres
def addition(a, b):
    return a + b

# Appel de la fonction
resultat = addition(3, 5)
print(resultat)  # Affiche : 8

Les types

Définition

Les paramètres et la valeur de retour d'une fonction peuvent être de différents types : entier, flottant, chaîne de caractères, booléen, liste, etc. Vous pouvez utiliser des annotations de type pour indiquer les types attendus.

À savoir : les annotations de type ne sont pas contraignantes. Elles servent uniquement à documenter le code et à aider les outils d'analyse statique.

Exemple

# Fonction qui concatène deux chaînes de caractères
def concatener(chaine1: str, chaine2: str) -> str:
    return chaine1 + chaine2

# Appel de la fonction
resultat = concatener("Bonjour, ", "monde!")
print(resultat)  # Affiche : Bonjour, monde!

Les assertions

Définition

Les assertions permettent de vérifier que les arguments ou les résultats d'une fonction respectent certaines conditions. Elles sont utiles pour détecter les erreurs pendant le développement.

Exemple

# Fonction qui divise deux nombres
def division(a: float, b: float) -> float:
    assert b != 0, "Le dénominateur ne peut pas être zéro."
    return a / b

# Appel de la fonction
resultat = division(10, 2)
print(resultat)  # Affiche : 5.0

La docstring

Définition

Une docstring est une chaîne de caractères placée directement après la définition d'une fonction. Elle documente son rôle, ses arguments et sa valeur de retour.

Exemple

# Fonction qui calcule l'aire d'un cercle
import math

def aire_cercle(rayon: float) -> float:
    """
    Calcule l'aire d'un cercle à partir de son rayon.

    Arguments :
    - rayon (float) : le rayon du cercle, doit être positif.

    Retourne :
    - float : l'aire du cercle.
    """
    assert rayon > 0, "Le rayon doit être positif."
    return math.pi * rayon ** 2

# Appel de la fonction
print(aire_cercle(5))