Pour cette séance, nous allons utiliser Python en mode "notebook". Le fichier que vous venez d'ouvrir, "introduction à Pyhton.ipynb", et qui est affiché ici-même, est un notebook. Faites-en une copie avec la commande ci dessus "File>Make a Copy...", et renommez-le en cliquant sur le titre (à côté de jupyter TD1...), par exemple en rajoutant votre nom.
On peut entrer des expressions (opérations, calculs) ou des instructions (des commandes) dans tous les champs ci-dessous qui commencent par In[..]
. Pour entrer plusieurs lignes à la suite, on appuie sur la touche entrée.
Le résultat s'obtient avec :
Il est possible qu'un notebook ne réponde plus lors de la tentative d'éxécution d'un commande ou d'un programme. C'est notamment le cas lorsqu'un programme précédent à planté. Commencez par sauver votre travail. Puis allez dans l'onglet "Home", et fermez le TD : cocher la case correspondante, "shutdown" en haut de la page. Fermez ensuite l'onglet du TD, et relancez-le à partir de "Home".
Testez les opérations usuelles (+ - * /
) dans le champ ci-dessous. On peut ré-écrire sur ce qui est déjà présent.
5 + 7
Testez le parenthésage:
7 + 4*3
(7+4)*5
Enfin, testez les opérateurs suivants // % **
.
Complétez votre cours (§ VI.1) en précisant leur effet.
Une variable est une mémoire qui permet de stocker une valeur numérique, du texte, une liste de courses,...
On affecte une valeur à une variable avec =
.
On affiche une variable avec l'instruction print(variable)
: c'est une instruction de sortie (output).
a = 2
print(a)
Attention : Le symbole "=" n'a pas du tout la même signification qu'en mathématiques !
L'équation : $$a = a + 1 $$ n'a pas de solution en mathématiques, par contre ceci fonctionne :
a = 5
a = a + 1
print(a)
On peut affecter une expression à une variable:
b = 5
c = 2*a + b**2
print(c)
Une instruction d'entrée importante est input(). Ci-dessous, on affecte l'entrée à la variable prenom.
Remarque : il n'y a pas d'accent à la variable prenom, c'est volontaire : cf. le cours photocopié.
prenom = input("Donnez votre prénom : ")
print("bonjour",prenom)
Qu'est censé faire le code suivant ? Testez-le, et concluez :
a = input("entrez un nombre :")
print(3*a)
Comme vous venez de le voir, le résultat du programme précédent n'est pas celui attendu. Les données et les variables sont typées dans un langage de programmation, c'est-à-dire que l'on doit préciser si ce sont des nombres, du texte, etc... En python le typage est très souple, ce qui facilité l'écriture des programmes lorsque l'on débute. Néanmoins, il est parfois nécessaire de le préciser. L'instruction type(variable)
permet de savoir quel est le type d'une variable. Testez et concluez (vous pouvez écrire vos idées après "commentaires" avec un double clic sur la ligne "commentaires", puis ctrl + entrée pour avoir le format texte) :
a = 3
type(a)
a = input("entrez un nombre :")
type(a)
Commentaires :
Les types principaux que nous utiliserons cette année sont:
int
;float
;char
;bool
;list
;str
. Elles sont entre guillemets simples 'chaine'
ou doubles `"chaine".On peut forcer le type de certaines variables en rajoutant le type souhaité devant la variable.
int
devant le input et testez à nouveau; enfin concluez.a = int(input("entrez un nombre :"))
print(type(a))
print(3*a)
On utilise la notation anglo-saxonne avec . pour la virgule, et e pour "10 puissance". Par exemple 1.5e4 = 15000
Des phénomènes étranges peuvent se passer avec les flottants... tester 0.1 + 0.1 puis 0.1 + 0.1 + 0.1 etc.. Conclure.
0.1+0.1
Commentaires :
Remarque : le type complexe existe aussi, on utilise j à la place de i.
type(1+2j)
Ecrire un programme qui demande votre âge en année et le convertit en nombre de jours.
En exemple ci dessous, les premières lignes avec des commentaires. Il ne vous reste qu'à compléter !
"""
TD1_ex1_fait_par_Super(wo)man
Programme permattant de convertir un nombre d'annees en nombre de jours
"""
prenom = input("Donnez votre prenom : ") # un petit accueil sympathique
print("bonjour",prenom)