... | ... | @@ -146,7 +146,7 @@ Les fonctions et méthodes (fonctions définies dans une classe) peuvent être a |
|
|
|
|
|
#### A.3.1. Rappels, fonction et **paramètres** de la fonction
|
|
|
|
|
|
Une fonction (ou une méthode) est définie par le mot-clé **def**, un nom de fonction suivi d'une liste de noms de variables entre parenthèses, puis un bloc de code introduit par les "**:**", qui commence de préférence par une docstring.
|
|
|
Une fonction (ou une méthode) est définie par le mot-clé **def**, un nom de fonction suivi d'une liste de noms de variables entre parenthèses, puis un bloc de code introduit par les "**:**", qui commence de préférence par une docstring suivie d'une ligne blanche.
|
|
|
|
|
|
``` python
|
|
|
def ma_fonction(param1, param2, param3):
|
... | ... | @@ -155,7 +155,7 @@ def ma_fonction(param1, param2, param3): |
|
|
```
|
|
|
|
|
|
Cas particulier des **méthodes**, avec le mot-clé **self**pour renvoyer à l'instance courante (attention, tout autre mot fait l'affaire, dont si vous l'oubliez le premier nom fourni fera office de "self" !).
|
|
|
On remarque que dans le cas de le fonction **__init__** qui initialise l'instance, les **attributs** n'ont pas forcément le même nom que les paramètres, et peuvent d'ailleurs être en nombre différent !
|
|
|
On remarque que dans le cas de la fonction **__init__** qui initialise l'instance, les **attributs** n'ont pas forcément le même nom que les paramètres, et peuvent d'ailleurs être en nombre différent !
|
|
|
|
|
|
``` python
|
|
|
class MonObjet:
|
... | ... | @@ -171,6 +171,7 @@ class MonObjet: |
|
|
:return: somme a + b
|
|
|
:rtype: flottant
|
|
|
"""
|
|
|
|
|
|
aplusb = a + b
|
|
|
self.somme += aplusb
|
|
|
return aplusb
|
... | ... | @@ -196,6 +197,9 @@ En théorie, les **paramètres** sont ce qui est **déclaré** dans la fonction, |
|
|
Donc, ici a et b seraient les paramètres de `ma_methode` et 1,2 seraient les arguments passés lors de l'appel.
|
|
|
La méthode `ma_methode` renvoie ici un nombre calculé par la fonction, qui est également décrit dans la docstring.
|
|
|
|
|
|
:bulb: Petite astuce sous l'IDE PyCharm quand on appelle une fonction:
|
|
|
> quand le curseur est positionné entre les parenthèses, **Ctrl+P** fait apparaître la liste des paramètres attendus.
|
|
|
|
|
|
La manière de définir et d'ordonner les paramètres est décrite dans le point **f** ci-dessous
|
|
|
|
|
|
|
... | ... | |