You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.

01-functions.md 1.4 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. +++
  2. title = "Fonctions"
  3. weight = 1
  4. +++
  5. # Fonctions
  6. ## Fonction sans argument
  7. Définition:
  8. ```python
  9. def dire_bonjour():
  10. print("Bonjour")
  11. ```
  12. * avec `def`
  13. * avec un `:` à la fin et un _bloc indenté_ (appelé le "corps")
  14. Appel:
  15. ```
  16. >>> dire_bonjour()
  17. Bonjour
  18. ```
  19. * avec le nom de la fonction et des parenthèses
  20. ## Le pouvoir des fonctions
  21. Ici on vient de créer une nouvelle fonctionnalité
  22. à Python. Avant qu'on définisse la fonction
  23. `dire_bonjour()`, il ne savait pas dire bonjour,
  24. il savait uniquement afficher des messages à
  25. l'écran.
  26. On dit qu'on a _créé une abstraction_. Et
  27. c'est une technique extrêmement utile en
  28. programmation.
  29. ## Fonction avec un argument
  30. Définition: avec l'argument à l'intérieur des parenthèses
  31. ```python
  32. def dire_bonjour(prénom):
  33. print("Bonjour " + prénom)
  34. ```
  35. Appel: en passant une variable ou une valeur dans les parenthèses
  36. ```python
  37. >>> dire_bonjour("Germaine")
  38. Bonjour Germaine
  39. >>> prénom_de_charlotte = "Charlotte"
  40. >>> dire_bonjour(prénom_de_charlotte)
  41. Bonjour Charlotte
  42. ```
  43. ## Exécution d'une fonction
  44. C'est exatement comme si on assignait les arguments de la fonction avant d'éxécuter le code
  45. dans le corps
  46. ```python
  47. # Ceci:
  48. dire_bonjour("Dimitri")
  49. # Est équivalent à cela:
  50. prénom_de_dimitri = "Dimitri"
  51. print("Bonjour " + prénom_de_dimitri)
  52. # Lui-même équivalent à:
  53. print("Bonjour " + "Dimitri")
  54. ```