On appelle fonction une partie de code recevant une ou plusieurs informations à partir desquelles elle retourne une ou plusieurs informations.
Les informations fournies à la fonction sont appelées arguments ou paramètres de la fonction.
Les informations renvoyées par la fonction sont appelées résultats.
En 3 temps :
return
On parle ici d'une fonction qui n'a pas de paramètres ni de return
.
Il faut dissocier la création (ou déclaration) d'un fonction et son utilisation (ou appel).
C'est comme pour un outil, créer un marteau n'a rien a voir avec l'utiliser !
En python :
def nom_fonction():
instructions1
instructions2
Remarques :
def
permet de créer une fonction.def
sont obligatoires.for
et if
)
Vous avez déjà utilisé des fonctions : begin_fill()
, end_fill()
En python :
nom_fonction()
Remarques :
()
à la fin, même s'il n'y a rien dedans. Création puis utilisation d'une fonction 'bonjour' qui affiche "Bonjour à tous" dans le terminal.
Création d'un côté d'un carré de 100 pixels (avec la rotation de 90°).
On parle ici d'une fonction qui a des paramètres mais pas de return
.
Les paramètres sont là pour "paramétrer" / modifier le comportement de la fonction lors de son exécution.
En python :
def nom_fonction(param1, param2):
instructions1
instructions2
Remarques :
Là encore, vous avez déjà utilisé des fonctions avec paramètres : print()
, input()
, int()
, ...
En python :
a = valeur
nom_fonction(a, 3)
Remarques :
3
).a
).Création puis utilisation d'une fonction 'bonjour' prend un paramètre 'prenom' qui affiche "Bonjour " puis prenom dans le terminal.
Création d'un côté d'un carré de longueur 'long' (avec la rotation de 90°).
return
return
Toutes les fonctions ont des résultats (c'est leur buts) mais jusqu'à
présent nous n'avons vu des résultats que dans le terminal ou dans la
fenêtre de turtle
.
Voyons à présent un type de fonction qui a des paramètres et renvoi
des informations dans le programme qui l'a appelée à l'aide d'un
return
.
return
return
En python :
def nom_fonction(param1, param2):
instructions
return resultat
Remarques :
resultat
peut-être une variable créée dans la fonction, une expression ou une valeurreturn
est un mot clé réservé au renvoi des résultats d'une fonction dans le programme ou elle a été appeler.return
exécutée, la fonction s'arrête et l'exécution continue dans le programme principal.return
return
Là encore, vous avez déjà utilisé des fonctions avec return
: input()
et int()
par exemple.
En python :
a = valeur
b = nom_fonction(a, 3)
print(nom_fonction(b, 2))
Remarques :
Le résultat d'une fonction peut être utilisé :
b
).print
)return
Création puis utilisation d'une fonction 'bonjour' prend un paramètre 'prenom' qui retourne "Bonjour " puis prenom.
Création d'une qui calcule l'angle entre les côtés d'un polygône régulier pour turtle
à partir du nombre de côtés.
Comment enregistrer une suite de valeurs ?
Ex : les prénoms d'une classe, la température d'une pièce toute les minutes, ...
→ Variable normale : difficilement manipulable !
→ Un nouveau type de variable : les tableaux list
Pixel-art : Une fonction qui crée un pixel d'une couleur. La couleur (parmis 12) est indiquée par un entier en respectant le code suivant :
Code | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
Valeur | "white" | "black" | "gray" | "red" | "green" | "blue" | "orange" | "maroon" | "aqua" | "fuchsia" | "gold" | "indigo" |
En python :
nom_liste = [valeur0, valeur1, ...]
Exemples :
entiers = [1, 2, 8, 78] # liste d'entiers
strings = ["slt", "bjr", "cc"] # liste de strings
mixte = [2, "dd", 2.5] # liste contenant plusieurs type de valeurs
liste_de_liste = [[12, 4], [5, 4, 3],[4]] # liste contenant des listes
liste_vide = [] # ou list()
liste_iterable = list(range(12)) # les entiers de 0 à 11
Remarques :
[]
permettent de créer une liste.list()
qui permet de créer une liste. Elle peut être utilisée à partir d'un itérable.En python :
nom_liste[indice]
Exemples :
entiers = [1, 2, 8, 78] # liste d'entiers
strings = ["slt", "bjr", "cc"] # liste de strings
print(entiers[0]) # renvoie 1
print(entiers[3]) # renvoie 78
print(strings[1:3]) # renvoie ['bjr', 'cc']
print(strings[-1]) # renvoie cc
Remarques :
[]
entre lesquels on place l' indice
de la valeur recherchée.:
dans les crochets.En python :
nom_liste[indice] = nouvelle_valeur
Exemples :
entiers = [1, 2, 8, 78] # liste d'entiers
entiers[1] = 14 # change la valeur à l'indice 1 par 14
print(entiers) # renvoie [1, 14, 8, 78]
En python :
len(nom_liste)
Exemples :
entiers = [1, 2, 8, 78] # liste d'entiers
print(len(entiers)) # renvoie 4
Il existe différentes façons d'ajouter un élément dans une liste, en voici deux.
En python :
nom_liste.append(valeur)
nom_liste.insert(indice, valeur)
Exemples :
entiers = [1, 2, 8, 78] # liste d'entiers
entiers.append(22) # ajoute 22 à la fin de entiers
print(entiers) # renvoie [1, 2, 8, 78, 22]
entiers.insert(2,-12)
print(entiers) # renvoie [1, 2, -12, 8, 78, 22]
Remarques :
.append(valeur)
permet d'ajouter une valeur
à la fin de la liste..insert(indice, valeur)
permet d'insérer une valeur
à l'indice
précisé comme premier paramètre.Voici une première façon de supprimer un élément dans une liste.
En python :
nom_liste.pop(indice)
Exemples :
entiers = [1, 8, 2, 8, 78, 9] # liste d'entiers
val = entiers.pop() # supprime le dernier élément de entiers et le stocke dans val
print(val) # renvoie 9
print(entiers) # renvoie [1, 8, 2, 8, 78]
val = entiers.pop(3) # supprime la valeur de l'indice 2 et la retourne
print(val) # renvoie 8
print(entiers) # renvoie [1, 8, 2, 78]
Remarques :
.pop()
supprime la dernière valeur et renvoie la valeur supprimée..pop(indice)
supprime la valeur de l'indice
donné et renvoie la valeur supprimée.Voici une seconde façon de supprimer un élément dans une liste.
En python :
nom_liste.remove(valeur)
Exemple :
entiers = [1, 8, 2, 8, 78, 9] # liste d'entiers
entiers.remove(8) # supprime le premier 8
print(entiers) # renvoie [1, 2, 8, 78, 9]
Remarques :
.remove(valeur)
supprime la première occurence de la valeur
donné en paramètre.Création d'une liste ma_liste
contenant les valeurs 4, 6, 7, 12, 15, 22, -465
.
Affichage d'une valeur par ligne
Création d'une spirale dont les côtés ont les valeurs suivante : 5, 10, 15, 22, 25, 28, 35, 50, 100.
Message du popup !