CodeGym /Cours Java /Python SELF FR /Fonctions en Python

Fonctions en Python

Python SELF FR
Niveau 6 , Leçon 1
Disponible

7.1 Création de fonctions

En Python, la création de fonctions est un aspect fondamental de la programmation, permettant au code d'être plus modulaire, réutilisable et lisible. Les fonctions en Python sont définies à l'aide du mot-clé def, suivi du nom de la fonction et de parenthèses avec des paramètres.

Tu peux toujours penser à une fonction comme à un ensemble de commandes regroupées sous un même nom. La forme générale de la déclaration d'une fonction est la suivante :


def nom(paramètres):
    commande1
    commande2
    commandeN

La fonction la plus simple en Python pourrait ressembler à ceci :


def greet():
    print("Hello, World!")

L'appel d'une fonction s'effectue en écrivant son nom avec des parenthèses :


greet()  # Affichera : Hello, World!

L'appel d'une fonction équivaut à écrire son code interne à l'endroit de l'appel. Au lieu d'écrire le même code encore et encore, tu peux le regrouper dans des blocs séparés et leur donner un nom.

7.2 Passage d'arguments à une fonction

Travailler avec des fonctions serait moins intéressant si elles faisaient toujours la même chose — juste un bloc de commandes nommées et c'est tout. Au lieu de cela, les fonctions ont rapidement été dotées de paramètres — des variables à travers lesquelles on peut passer différentes valeurs.

Les variables à l'intérieur d'une fonction sont appelées paramètres de la fonction. Et les valeurs qui leur sont transmises lors d'un appel spécifique sont les arguments de la fonction. Les paramètres de la fonction reçoivent simplement les valeurs des arguments.


def greet(name):
    print("Hello,", name)
        
greet("Alice")  # Affichera : Hello, Alice!

Exemple d'une fonction avec deux arguments :


def print_sum(a, b):
    print(f"Le somme de {a} et {b} est {a + b}")
        
print_sum(10, 15)  # Affichera : Le somme de 10 et 15 est 25

Bien sûr, tu peux aussi passer des expressions entières en tant qu'arguments :


def print_sum(a, b):
    print(f"Le somme de {a} et {b} est {a + b}")
        
print_sum(10*10-123, 15//2)  # Affichera : Le somme de -23 et 7 est -16

Astuce ! Pour ceux qui aiment le C/C++ — toutes les variables en Python sont des références du point de vue du C++. Les paramètres de fonction aussi. Lors d'une assignation, la valeur n'est jamais copiée ni dupliquée — seule une référence est attribuée.

7.3 Fonction — c'est un objet

En Python, les fonctions sont des objets de première classe, ce qui signifie qu'elles peuvent être utilisées comme n'importe quel autre objet. Cela donne aux développeurs un puissant outil pour créer des solutions logicielles flexibles.

Fonctions comme objets

En tant qu'objets de première classe, les fonctions en Python peuvent être :

  • Attribuées à une variable
  • Passées comme arguments à d'autres fonctions
  • Retournées depuis d'autres fonctions
  • Incluses dans des structures de données comme les listes, dictionnaires

Exemples :


def shout(text):
    return text.upper()
        
yell = shout
        
def greet(func):
    greeting = func("Hello")  # appel de la fonction
    print(greeting)
        
greet(shout)

Nous aborderons ce sujet à plusieurs reprises à l'avenir, mais pour l'instant, retiens cela — tout en Python est un objet. Les fonctions, les classes, les erreurs, les listes, les modules — tout.

Commentaires
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION