Vous souvenez-vous quand nous avions introduit des synonymes ? C'était dans la cinquième leçon, quand nous avions dit que nous pouvions apprendre à Reeborg à reconnaître d'autres langues. L' exemple que nous avions utilisé était le mot français pour "move".
avance = move
Des synonymes peuvent aussi être utilisés pour les nombres :
>>> n = 3
>>> print n
3
>>> 2*n
6
>>> n*n
9
Pas mal, non ? Maintenant, nous pouvons changer la valeur d'un synonyme quand c'est nécessaire.
>>> n = 3
>>> print n
3
>>> n = 2
>>> print n
2
Puisque la valeur d'un synonyme peut varier (changer), nous appelons cela une variable. Quand vous créez un synonyme, nous disons que vous affectez une valeur à une variable. Le symbole utilisé "=" devrait être lu "est un synonyme de" au lieu de "est égal à" comme vous avez l'habitude de le faire. C'est parce que si "n est égal à 2", alors certainement "2 est égal à n". Essayons pour voir ce que Python en fait.
>>> n = 2 # c'est bon
>>> 2 = n
SyntaxError: can't assign to literal
Si un symbole différent du signe égal existait sur les claviers normaux, comme
>>> n ← 3
>>> print n
3
alors il est très probable que Guido van Rossum, l'inventeur de Python, l'aurait utilisé à la place pour dire "est un synonyme de". Mais ce n'est pas le cas et nous devons donc utiliser le signe égal. Cela explique aussi pourquoi nous devons utiliser un double signe égal "==" quand nous voulons tester si deux nombres sont égaux.
Comme nous l'avons déjà vu rapidement ci-dessus, une fois qu'un nombre est affecté à une variable, cette variable peut être utilisée de la même façon que nous utiliserions un nombre. Par exemple :
>>> a = 1
>>> b = 2
>>> c = a + b
>>> print c
3
Ce que nous venons de voir devrait être assez facile à comprendre. Ce qui suit pourrait être un peu plus difficile à première vue :
>>> a = 1
>>> a = a + a # Étonnant ? >>> print a
2
Vous devez vous rappeler que "=" doit être lu "est un synonyme pour". Ainsi, la ligne "étonnante" devrait être comprise comme ceci :
Écrire tout cela comme je l'ai fait lui donne l'air compliqué. En fait, vous vous y habituerez rapidement et très bientôt cela ne vous étonnera plus du tout.
Comme cette méthode pour changer la valeur d'une variable se rencontre très souvent, Python permet d'utiliser une notation "condensée" :
>>> a = 1
>>> a += 3 # même chose que "a = a + 3" >>> print a
4
>>> a -= 2 # même chose que "a = a - 2" >>> print a
2
>>> a *= 5 # même chose que "a = a * 5" >>> print a
10
>>> a /= 2 # même chose que "a = a/2" >>> print a
5
Rappelez-vous combien il était difficile pour Reeborg d'additionner deux nombres en base 10 ? Juste pour vous rafraîchir la mémoire, nous aimerions que Reeborg puisse additionner deux nombres comme suit :
3+2=5
8+4=12
Vous pouvez utiliser des variables pour faciliter la tâche. De cette manière, vous n'avez pas besoin d'utiliser un monde spécial, comme nous le devions avant, ni de faire transporter des sonnettes avec lesquelles commencer. Voici quelques suggestions :