Séance 1
variables et opérations
Si certains langages exigent que le type de variable soit préalablement déclaré, Python autorise des définitions implicites et assure plus de souplesse au code.
a=12
L'instruction précédente crée une variable a entière ( de type integer, int) contenant la valeur 12: Python demande à l'ordinateur de créer une place dans sa mémoire accessible suffisante pour y loger un nombre entier: A cet emplacement, il y pose 12.
a=12.0
L'instruction précédente crée par contre une variable a de type float , contenant la valeur 12: python allouera plus de mémoire pour cette variable-là. Cette variable pourra prendre des valeurs décimales. (les nombres non décimaux sont a priori inaccessibles, mais on rajoutera alors une surcouche permettant de contourner la limitation intuitive, et la porte sera alors ouverte au calcul formel: tout se programme?)
a="Ceci est un test"
Ici, a est implicitemment déclaré de type string: a est une chaine de caractères. Tout string est à écrire entre guillements ou entre apostrophes: a='12' a le même résultat.
On notera aussi le statut particulier du signe égal en informatique:
L'égalité informatique est une instruction d'affectation: a=12 se lit ainsi: la variable a prend la valeur 12, ou la valeur 12 à droite de l'égalité est stockée dans la variable dont le nom est écrit à gauche de l'égalité.
Evidemment 12=a informatiquement ne signifie rien.
De même, l'instruction x=x+1 s'éxécute de la manière suivante: on augmente de 1 le contenu de la varibale x, et le résultat de ce calcul est stocké dans x: par cette manoeuvre, x a été "incrémenté de 1" dit-on. Il ne faut évidemment pas lire x=x+1 comme une égalité mathématique!
Exemples d'utilisation de variables et d'opérations sur ces variables:
A consulter ici! (ou cliquer sur l'image ci-dessous)
Entrée/Sortie
Transtypage
Nous avons vu précedemment la nécéssité de transformer une variable string en une variable numérique (float ou int):
Voici les fonctions permettant ce transtypage:
a="12"
b=int(a)
Ici, cette suite d'instruction crée une variable alphanumérique a contenant le texte "12", et on en construit une variable numérique b contenant le nombre entier 12.
L'intruction a=float("12") crée une variable a de type float contenant 12.0
La suite d'instructions: a="12" et a=int(a) se comprend ainsi: on crée une variable a alphanumérique contenant le texte 12 et ensuite ce texte est converti en un entier qui est transféré dans la variable a implicitemment reconvertie en entier au cours de l'opération: son type change au cours de l'opération!
Exercice .
On désire corriger le programme suivant: on demande l'âge de l'utilisateur et on désire lui renvoyer le double de son âge.
1- Expliquer le "bug".
2- Le corriger.