Intro
Intro
Intro
Romain Tavenard
1 Avant-propos
Lors de ce TD, vous allez créer, sur votre disque M:/, un répertoire dans lequel
vous travaillerez tout au long du semestre. Sauf indication contraire, vous
créerez, pour chaque séance de TD, un nouveau fichier Python dans
lequel vous écrirez votre code. Pour ce premier TD, vous serez guidés (un peu
plus bas dans cet énoncé) dans la création de votre répertoire/projet Python et
du fichier Python correspondant au TD1.
De plus, vous prendrez la bonne habitude de renseigner, en commentaire de
votre code, les tests effectués pour vérifier le bon fonctionnement de votre code.
Par exemple, plutôt que :
x = input("Entre une valeur :")
print(12)
vous écrirez :
x = input("Entre une valeur :")
print(x)
# [Entrée] Entre une valeur : 12
# [Sortie] 12
1
Ajoutez le répertoire data/ (dans lequel se trouvera le contenu dans le fichier de
données mis à votre disposition sur CURSUS) à votre projet. Pour cela, il suffit
de décompresser l’archive dans le répertoire de votre projet (en utilisant votre
gestionnaire d’archive préféré) et le dossier apparaîtra dans l’arborescence de
votre projet dans PyCharm.
Ajoutez un nouveau fichier Python à votre projet, que vous nommerez td1.
En exécutant pour la première fois ce programme, vous avez créé dans PyCharm
une configuration d’exécution (Run Configuration). Ainsi, il vous suffira par
2
la suite de sélectionner cette configuration d’exécution dans la liste disponible
en haut à droite de votre fenêtre PyCharm puis de cliquer sur le bouton Run
(triangle vert).
Un autre outil très utile pour développer en Python dans PyCharm est la console
Python. Comme vous le savez, il est possible d’exécuter des morceaux de code
Python directement dans la console Python pour observer leur effet sans avoir à
les inclure dans un programme (ou script Python).
2. Pour lancer la console Python, rendez vous dans le menu Outils (Tools) et
choisissez l’item correspondant. Entrez quelques lignes de code élémentaire
pour vous familiariser avec cette console.
3 Variables
Le langage Python est un langage fortement typé, ce qui signifie que chaque
variable, à chaque instant, ne peut être que d’un type. Par contre, ce typage
est dynamique, ce qui signifie qu’à la déclaration d’une variable, il n’est pas
nécessaire de déclarer son type : c’est la valeur qu’on affectera à la variable qui
déterminera son type. La déclaration d’une variable est donc une instruction du
type :
ma_variable = 12
Il est possible de connaître le type d’une variable en utilisant la fonction type :
print(type(ma_variable))
3
4 Initiation au débogage
Un débogueur est un outil qui vous permet de suivre l’exécution d’un programme
pas à pas, pour mieux comprendre son (dys-)fonctionnement. Lorsque vous
souhaiterez utiliser le débogueur de PyCharm, il suffira de cliquer sur l’icône
symbolisant un insecte (sémantique originale du terme bug) au lieu de l’icône
Run.
Vous pourrez souhaiter utiliser ce débogueur dans les deux cas suivants :
5 Exercice d’algorithmie
7. Écrivez sur papier, en pseudo-code, un algorithme permettant, étant
données 3 longueurs a, b et c d’afficher s’il est ou non possible de construire
un triangle ayant ces longueurs pour côtés et, le cas échéant, si ce triangle
est équilatéral, isocèle, rectangle ou quelconque. Attention : un triangle
peut être à la fois isocèle et rectangle.
6 Structures conditionnelles
La syntaxe des structures conditionnelles en Python est de la forme suivante :
4
if condition1:
# [...]
elif condition2:
# [...]
else:
# [...]
8. Stockez, dans une variable age, un entier entré par l’utilisateur, puis
affichez l’une des phrases suivantes, en fonction de la valeur stockée dans
age :
— La classe d’âge est 0-19
— La classe d’âge est 20-29
— La classe d’âge est 30+
Pour récupérer une valeur entrée par l’utilisateur, on peut utiliser la fonction
input :
valeur_entree = input("Entrez votre âge : ")
Pour pouvoir comparer cette valeur aux bornes des différents intervalles, il sera
nécessaire de la convertir en entier (vous pouvez tester le type de cette variable
pour vous en rendre compte) à l’aide de la fonction int qui prend en entrée
une chaîne de caractères et la transforme, si cela est possible, en l’entier qu’elle
représente.
7 Boucles
9. Écrivez une boucle qui permette d’afficher les valeurs contenues dans une
liste. La sortie affichée dans la fenêtre Run de PyCharm devra être de la
forme (pour une liste définie par lst = [1, 7, 5, 3, 6]) :
La liste lst contient : 1
La liste lst contient : 7
La liste lst contient : 5
La liste lst contient : 3
La liste lst contient : 6
Pour afficher une chaîne de caractères composée d’une partie de texte fixe et
d’une autre correspondant au contenu d’une variable, on utilise la méthode
format(), comme dans l’exemple suivant :
prenom = "Antoine"
nom = "Griezmann"
annee_naissance = 1991
print("{} {} est né en {}".format(prenom, nom, annee_naissance))
10. Écrivez une nouvelle boucle affichant, avec les valeurs contenues dans une
liste, leur indice. On obtiendra alors une sortie du type :
5
La liste l contient 1 à l'indice 0
La liste l contient 7 à l'indice 1
La liste l contient 5 à l'indice 2
La liste l contient 3 à l'indice 3
La liste l contient 6 à l'indice 4
11. Écrivez une nouvelle boucle affichant les carrés des valeurs contenues dans
une liste. On obtiendra alors une sortie du type :
1^2=1
7^2=49
5^2=25
3^2=9
6^2=36
Dans la suite, les exemples présentés seront basés sur des boucles for, mais les
mots-clés break et continue sont également utilisables avec des boucles while,
exactement de la même façon. Lors de l’exécution d’une boucle, il est possible
de vouloir en sortir si une certaine condition est remplie. Cela se fait à l’aide de
l’instruction break :
for v in liste_valeurs:
if condition:
break
# [...]
De même, il est possible de vouloir, à certaines étapes de l’exécution, ne rien
faire et passer à l’itération suivante :
for v in liste_valeurs:
if condition:
continue
# [...]
13. Parcourez, à l’aide d’une boucle, la liste des 30 premiers entiers et affichez
un message pour chaque entier pair (pour tester la parité d’un entier, on
s’intéressera au reste de sa division entière par deux). Lorsque la valeur
20 est dépassée, imposez de sortir de la boucle.
8 Exercice de synthèse
14. Écrivez un programme qui convertit une note scolaire entrée par l’utilisa-
teur (on vérifiera que celle-ci est bien comprise entre 0 et 20 et on affichera
un message d’erreur sinon) en appréciation selon le barème suivant :
6
Note Appréciation
N ≥ 15 A
10 ≤ N < 15 B
5 ≤ N < 10 C
N <5 D