TP 1 : Variables et types

BIU IA - Python

22 Janvier 2026

Dans ces premiers TP, on va découvrir les bases de Python à travers la librairie turtle qui permet de dessiner. Le principe est simple : chaque commande contrôle un “crayon” qui dessine dans une fenêtre.

Thonny

Pour la plupart des langages de programmation, Python inclus, on tapera les instructions dans de simple fichiers textes. Ce code-là sera ensuite interprété par un programme spécifique qu’on appelle l’interpréteur Python, qui exécutera le code qu’on lui fournit. De ce fait, on peut taper son code dans n’importe quel éditeur de texte, par exemple le bloc-note. Cela dit, on préférera utiliser des éditeurs qui facilitent le travail, par exemple, en proposant de la coloration syntaxique pour mettre en couleur certains mots clés du langage, de l’autocomplétion proposant des suggestions de fonctions à l’utilisateur , des fonctionnalités permettant de naviguer facilement dans le code, l’exécuter etc.

Il existe des dizaines d’éditeurs de code différents, supportant souvent plusieurs langages. Libre à vous d’utiliser celui qui vous conviendra le mieux, mais pour faciliter ce cours, nous vous proposons de travailler avec l’éditeur Thonny, spécialement créé pour Python, qui permet une prise en main facile et qui a l’avantage de pouvoir être installé sur quasiment tous les systèmes d’exploitation.

  1. Lancez Thonny et tapez votre premier programme dans la zone de gauche.
print("Hello World")
  1. Exécutez votre programme en appuyant sur F9 ou en cliquant sur . Observez ce qu’il s’est passé dans la fenêtre “Console”.

  2. Exécutez le programme (faux) suivant :

print("Hello World")
PRINT(Salut les copains)
  1. Observez les défauts de colorations syntaxiques dans l’éditeur, ainsi que le message d’erreur qui s’affiche dans la console à l’exécution. Corrigez le programme !

  2. Sauvegardez votre script sur l’ordinateur. On utilise en général l’extension .py pour les scripts Python, par exemple : hello.py.

La dernière question de l’exercice précédent montre l’important de bien respecter la syntaxe du langage. En particulier, Python est sensible à la casse, c’est-à-dire que les majuscules et minuscules ont une importance. PRINT et print ne sont pas les mêmes fonctions.

Premiers programmes

Ouvrez l’éditeur Thonny et tapez le programme suivant (sans les nombres de gauche qui désigne les numéros de ligne) :

import turtle

turtle.forward(100)
turtle.left(90)
turtle.forward(200)
  1. À votre avis, que font les fonctions turtle.forward(100), turtle.left(90), turtle.forward(200)?

Ces fonctions prennent toutes un paramètre en entrée, qui est un nombre. Dans le cas de turtle.forward, ce nombre représente une distance, dans le cas de turtle.left, ce nombre représente un angle (en degré).

  1. Essayez de modifier les paramètres des fonctions précédentes.
  2. Complétez le programme ci-dessus pour tracer un rectangle de taille 100 par 200.

Le turtle. devant le nom de fonction indique qu’on appelle une fonction qui se trouve dans la librairie turtle que nous avons chargé à la ligne 1. Cela permet d’éviter les ambiguités lorsque plusieurs librairies utilisent les mêmes noms de fonctions. Si on est sûr de ne pas introduire d’ambiguité, on peut écrire :

from turtle import *

forward(100)
left(90)
forward(200)

Ou encore :

import turtle as t

t.forward(100)
t.left(90)
t.forward(200)

Quand on utilise une fonction, on doit connaître le ou les paramètres qu’elle attend pour l’utiliser correctement. Pour cela, on se réfère à la documentation. Chaque librairie (bien faite) en a une, ce qui permet de trouver les informations dont on a besoin et des exemples. On trouvera par exemple la documentation de la librairie turtle à l’adresse suivante : https://docs.python.org/3/library/turtle.html.

La fonction turtle.goto(x,y) bouge le crayon jusqu’au point de coordonnées (x,y).

  1. Utilisez cette fonction pour tracer un triangle rectangle de côté 100.
  2. BONUS: Avec l’aide de la documentation, tracer ce triangle en rose.

La fonction turtle.up() lève le crayon (et donc on ne dessine plus quand on bouge), la fonction turtle.down() redescend le crayon.

Utilisez ces fonctions pour tracer deux carrés de côté 100 par 100. Le premier doit avoir son coin en bas à gauche aux coordonnées (-100,-100) et le deuxième sont coin en bas à gauche aux coordonnées (100,100) comme ci-dessous :

Types de données

La fonction print vu précédemment écrit du texte dans la console. Elle prend (au moins) un paramètre en entrée : le texte à écrire. Essayez de taper le code suivant :

print(Hello)

On obtient l’erreur NameError: name 'Hello' is not defined. En effet, dans le programme, Hello n’est pas considéré comme du texte mais comme étant soit une fonction, un nom de variable, un mot-clé…

Quand on veut écrire du texte en tant qu’objet en Python, on le met entre guillemets ou entre apostrophes. On appelle cela une chaîne de caractères (string en anglais). Essayez avec print("Hello") ou print('Hello').

On parle de type de données pour désigner la nature d’une valeur. Voici les types de données de base en Python :

On trouve aussi souvent listes (list) et des dictionnaires (dict) mais ce sont des types de données un peu plus avancé qu’on couvrira dans les prochains TP.

Attention donc, 12 est fondamentalement différent de "12" en Python. Le premier représente le nombre de douze, donc de type int alors que le second représente une chaîne de caractère composé de deux lettres : le chiffre “1” et le chiffre “2”.

Pour manipuler des variables numériques, on peut utiliser +, -, *, / ainsi que // (division entière, par exemple, 25//4 renvoie 6 alors que 25/4 renvoie 6.25), % (reste de la division entière : 25 % 4 donne 1), ** (puissance, 10**4 donne 10000) etc. Pour des opérations plus complexes, on pourra aller voir du côté de la libraire math.

Il existe de nombreuses fonctions pour manipuler des chaînes de caractères, c’est une des forces du langage Python. Nhous les présenterons plus tard. Nous montrons seulement quelques fonctions ici. La concaténation colle des chaînes de caractères, par exemple, "Bonjour "+"Bob" génère la chaîne "Bonjour Bob". Attention, on utilise le même symbole que l’addition des entiers mais c’est une fonction différente. Essayez par exemple "Alice a "+23+" ans". On doit d’abord convertir le nombre 23 en une chaîne de caractère contenant le chiffre 2 puis le chiffre 3. On utilise str(23) pour cela. On peut répéter une chaîne, par exemple : 3*"MAYDAY! ".

Écrire un programme qui affiche un brin d’ADN composé de :

On essaiera d’avoir un programme plus petit que le brin lui-même !

Variables

On a souvent besoin de stocker des valeurs dans un programme pour pouvoir les réutiliser plus tard. On utilise alors des variables. Une variable se définit avec = de la façon suivante :

doigts = 5
moyenne = 12.2
bonjour = "Hello World!"

On peut aussi changer leur valeur, faire des calculs avec et les utiliser dans des fonctions. Essayez :

x = 5
print(x)
x = x+2
print(x)
  1. Écrivez un programme qui a une variable cote initialisée à 100 et qui trace un carré de côté cote.
  2. Écrivez un programme qui a une variable cote initialisée à 100 et qui trace un rectangle dont le petit côté est cote et le grand côté est deux fois plus grand que le petit côté.
  3. On peut utiliser : s = input("Côté ?") qui demande à l’utilisateur, dans la console, de saisir une valeur (sous forme de chaîne de caractères) et la met dans la variable s. Écrivez un programme qui demande un nombre n à l’utilisateur et trace un carré de côté n. Attention, il faudra convertir une chaîne de caractère en entier. On peut faire cela avec la fonction int. Par exemple, int("23") renvoie le nombre 23. En revanche, int("Alice") génèrera une erreur. On ne demande pas ici de gérer les erreurs.