☀️
420-1G2-HU Logique de programmation
  • 👋Bienvenue dans le cours de logique de programmation!
  • Bases de la logique de programmation
    • Concepts de la programmation
    • Les opérateurs
      • Exercices
    • Les commentaires
  • Les données
    • Les données et types simples
    • Les variables, les constantes et les opérations de base
    • Les opérations d'écriture et de lecture
    • Les opérations sur les chaînes de caractères
    • Laboratoire 1 - données
    • Laboratoire 2 - données
  • Les collections de données
    • Les listes
    • Les opérations sur les listes
    • Laboratoire listes - solution
    • Les dictionnaires
      • Exercices
  • Différents types de traitements
    • Structures logiques séquentielle
    • Structures logiques conditionnelles (if/else/elif)
    • Structures logiques répétitives (boucles)
      • Exercices de base
      • Laboratoire boucles - solution
  • Modularisation
    • Création et appels des fonctions
    • La documentation des fonctions
    • Annotation de types dans les fonctions
    • Laboratoire - fonctions (niveau débutant)
    • Révision express fonctions
    • Les modules
      • Laboratoire
  • La portée des variables
  • Débogage
    • 🫂Le débogueur, c'est ton ami!
      • Introductions aux outils de débogage
      • Techniques de débogage
    • Les erreurs et exceptions
      • Introduction aux notions d’erreurs
      • Les exceptions et leurs gestion
      • Exercices de base - avec solutions
      • Laboratoire débogage et gestion des erreurs -solution
  • Tests unitaires
    • Tests unitaires
    • Exercice
  • Cryptographie
    • Introduction à la cryptographie
  • Les fichiers
    • Accès aux fichiers
  • Résolution de problèmes
    • Résolution de problèmes : exercice introductif
    • Étapes d'analyse et de résolution de problèmes
  • Activités avec Légos
    • Introduction à la programmation
    • Consolidation sur les fonctions avec des blocs
    • Pratiquer les boucles avec des blocs
  • Laboratoires
    • Simulation combat - dragon vs chevalier
    • Simulateur de bataille - Les anneaux du pouvoir
    • Jeu de cartes
    • Lien logique mathématique
      • Algèbre de Boole
    • Crypto variée
    • Après Noël
  • git - système de gestion de versions
    • Introduction à Git
    • Étapes de création des dépôts Git
  • Classes inversées
    • Résolution de problèmes, fonctions et traitements conditionnels
  • Examens
    • Examen 2 - 2023
    • Examen 3 - 2023
    • Examen 2 - 2024
  • Révision
    • Fonctions, gestion d'erreurs et tests unitaires
    • Résolution de problème
  • Trucs utiles
    • Check-list
Powered by GitBook
On this page
  • Définition d’une fonction
  • Quel est le but des fonctions
  • Les fonctions natives (ou intrinsèques)
  • Syntaxe
  • Déclaration d'une fonction
  • Appel d'une fonction
  • Exemples
  • Programme principal
  • Paramètres par défaut
  • Syntaxe
  • Exemple
  1. Modularisation

Création et appels des fonctions

PreviousLaboratoire boucles - solutionNextLa documentation des fonctions

Last updated 9 months ago

Définition d’une fonction

Une fonction est un bloc d’instructions dont le but est de faire une tâche spécifique du programme.

Quel est le but des fonctions

Le but dans la création de fonctions est de découper le programme en plusieurs parties (modularisation) afin de les réutiliser à plusieurs endroits du programme et améliorer l’organisation et la lisibilité du code.

Les fonctions natives (ou intrinsèques)

Les fonctions intrinsèques sont des fonctions prédéfinies de Python (Build-in functions) que le programmeur peut utiliser.

Exemples de fonction (vous utilisez déjà quelques unes) :

  • print(chaîne) : affiche la chaîne de caractères passé en paramètre.

  • len(liste) : retourne la longueur d’une liste.

  • type(x) : retourne le type de la variable x.

  • int(x), float(x), str(x): retournent respectivement les valeurs converties en entier, réel et chaîne de caractère.

  • range(n) : retourne une séquence de nombres selon ce qu’on lui passe en paramètres.

Vous trouverez plus de fonctions natives dans la documentation officielle de Python suivante :

Syntaxe

Déclaration d'une fonction

def nom_fonction(parametre_1, parametre_2, ..., parametre_n):
    instruction_1
    instruction_2
    ...
    instruction_n
    return resultat # Résultat étant la valeur de retour de la fonction
  • def : c'est un mot clé pour définir une fonction en Python.

  • nom_fonction :c'est le nom de la fonction. Celui ci doit être significatif et soigneusement choisi (tout comme le nom d'une variable).

  • parametre_1, parametre_2, ..., parametre_n (optionnel): ce sont les paramètres de la fonction. On les utilise pour passer des valeurs à la fonction nom_fonction. Un paramètre doit être utilisé dans le corp de la fonction et il prend la valeur qu’on lui passe lorsqu’on appelle la fonction. En dehors de cette fonction, le paramètre n’existe pas dans le reste du code.

  • instruction_1, instruction_1, ..., instruction_1 : ce sont des lignes de code formant le corp de la fonction.

  • return resultat (optionnel): return est un mot clé qui permet de retourner une valeur (resultat) calculée dans la fonction. resultat est appelée valeur de retour.

Ne pas oublier

  • les deux points :.

  • l’indentation dans le corp de la fonction.

Ils font partie de la syntaxe de la fonction.

Appel d'une fonction

Pour appeler une fonction, on doit écrire le nom de la fonction en lui passant les paramètres dont elle a besoin. La fonction doit évidemment être définie avant.

Il est possible d’appeler une fonction

  • dans le programme principal.

  • dans une autre fonction.

Exemples

Exemple 1 : fonction sans paramètres et sans valeur de retour

Déclaration de la fonctio print_hello_worldn
def print_hello_world():
    print("**** Hello World ****")
Appel de la fonction print_hello_world
print_hello_world()

Exemple 2 : fonction avec paramètres et sans valeur de retour

Déclaration de la fonction affichage
def affichage(chaine1, chaine2):
    print("*"*50)
    concatenation = chaine1 + " " + chaine2
    print(concatenation)
    print("*"*50)
Appel de la fonction affichage
affichage("chaine de caractères 1", "chaine de caractères 2")

Exemple 3 : fonction avec paramètres et avec valeur de retour

Déclaration de la fonction addition
def addition(x, y, z):
    somme = x + y + z
    return somme
Appel de la fonction addition
addition(15,30,7)

Programme principal

if __name__ == "__main__": vient après la déclaration des fonctions et marque le début du programme principal.

Définition simplifiée :

if __name__ == "__main__": s'assure que le programme en cours d'exécution est le programme principal afin que son contenu (sous leif __name__ == "__main__":) soit exécuté.

Définition un peu moins évidente pour vous :

if __name__ == "__main__": est utilisé pour déterminer si un programme Python (dans un fichier .py) est exécuté en tant que programme principal ou s'il est importé en tant que module dans un autre programme. Si celui est importé, le programme principal (sous leif __name__ == "__main__":) n'est pas exécuté.

Exemple :

def addition(x, y, z):
    somme = x + y + z
    return somme

if __name__ == "__main__" :
    addition(15,30,7)

Paramètres par défaut

Il est possible de définir des valeurs par défaut pour les paramètres d'une fonction. Les valeurs par défaut sont utilisées lorsque la fonction est appelée sans fournir une valeur explicite pour un paramètre.

Syntaxe

def nom_fonction(parametre_1, parametre_2 = valeur_par_defaut2, parametre_3 = valeur_par_defaut3, ...):
    # Corp de la fonction
   

Assurez-vous de placer les paramètres avec des valeurs par défaut à la fin de la liste des paramètres de la fonction.

Exemple

def addition(x, y = 5, z = 3)
    somme = x + y + z
    return somme

if __name__ == "__main__" :
    somme1 = addition(2)
    somme2 = addition(2, 0)
    somme3 = addition(2, 0, 6)
    somme4 = addition(x=9, y=6, z=0)
    somme5 = addition(z=0, x=9, y=6)
    
    print(somme1)
    print(somme2)
    print(somme3)
    print(somme4)
    print(somme5)

Une fonction est exécutée uniquement lorsqu'elle .

Consolidation sur les fonctions avec des blocs
est appelée
Fonctions nativesPython documentation
Logo