![]()
INTRODUCTION |
Dans le chapitre précèdent, nous avons dessiné des carrés dont la longueur était « codée en dur » dans le programme. Cela rend le programme très peu flexible car il faut le modifier à chaque fois que l’on veut dessiner des carrés de taille différente. Une solution serait de demander à l’utilisateur la taille des carrés à tracer à l’aide d’une boîte de dialogue. Cette solution nécessite cependant de stocker la valeur saisie par l’utilisateur quelque part dans la mémoire de l’ordinateur, dans une sorte de boîte que l’on appelle couramment variable. Une variable est donc une sorte de boîte contenue dans la mémoire RAM de l’ordinateur accessible par son nom. En bref, une variable possède un nom et une valeur. Les règles pour nommer les variables sont les même que pour les fonctions : il ne peut s’agir de mots réservés du langage Python (mots-clés) ni de caractères spéciaux. De plus, le nom d’une variable ne peut pas commencer par un chiffre.
Donc, que se passe-t-il lorsqu’on écrit a = a + 5 ? Python évalue d’abord le côté droit de l’expression, a + 5, ajoutant ainsi 5 à la valeur actuelle contenue dans la variable a, et stocke ensuite le résultat de cette expression, à savoir le nombre entier 8 dans la variable indiquée à gauche du signe =, qui se trouve être la variable a.
De ce fait, le signe d’égalité ne porte pas la même signification en programmation qu’en mathématiques. Il ne définit pas une égalité au sens d’une équation, mais plutôt la définition d’une variable ou l’affectation d’une valeur à une variable
[plus...Dans certains langages de programmation, on utilise de ce fait un |
LIRE ET MODIFIER LE CONTENU D’UNE VARIABLE |
from gturtle import * makeTurtle() x = inputInt("Enter a number between 5 and 100") repeat 10: forward(x) left(120) x = x + 20 |
MEMENTO |
|
Les variables permettent de stocker des valeurs qu’il est possible de lire et de modifier au cours de l’exécution du programme. Toute variable possède un nom et une valeur. On peut définir une variable et lui affecter une valeur à l’aide de symbole égal =
[plus...
La valeur d’une variable est stockée dans la mémoire RAM de l’ordinateur et est perdue lorsque le programme se termine ou que l’ordinateur est mis hors tension]. |
DISTINCTION ENTRE VARIABLES ET PARAMÈTRES |
Il est crucial de bien saisir la différence entre une variable et un paramètre. Les paramètres servent à “injecter” des données à l’intérieur d’une fonction et ne seront valide qu’à l’intérieur de cette fonction alors qu’il est possible d’utiliser des variables partout dans le programme. Lors de l’appel d’une fonction, on assigne une valeur à chacun des paramètres qui sont alors accessibles dans le corps de la fonction comme des variables. [plus... Un paramètre est un point d’entrée dans la fonction, permettant de lui fournir des données utilisables par les instructions contenues dans son intérieur]
from gturtle import * def square(sidelength): repeat 4: forward(sidelength) right(90) makeTurtle() s = inputInt("Enter the side length") square(s) |
MEMENTO |
|
Il faut bien distinguer entre la variable s et le paramètre sidelength. Dans la définition d’une fonction, les paramètres peuvent être considérés comme des valeurs de substitution et sont utilisés comme une variable dont l’existence est limitée à l’intérieur de la fonction. Ainsi, si l’on appelle la fonction en passant une variable comme paramètre, c’est la valeur contenue dans la variable au moment de l’appel qui est utilisée en guise de paramètre lors de l’exécution de la fonction. De ce fait, square(length) dessine un carré dont la longueur du côté est la valeur contenue dans la variable length [plus... Plus précisément, la valeur de la variable length est copiée dans le paramètre sidelength (pass-by-value)]. |
LE MÊME NOM POUR DEUX CHOSES BIEN DISTINCTES |
from gturtle import * def square(sidelength): repeat 4: forward(sidelength) right(90) makeTurtle() sidelength= inputInt("Enter the side length") square(sidelength) |
MEMENTO |
|
Bien qu’il soit possible d’utiliser le même nom pour un paramètre spécifique d’une fonction et une variable dans le programme sans que cela ne pose problème, il est essentiel de bien distinguer les deux sur le plan conceptuel. |
EXERCICES |
|