TP1 : Introduction Python (2nde SNT)¶
Ouvrir le document d'introduction à Pyzo pour commencer. Pyzo est à utiliser pour l'ensemble des exercices de la fiche.¶
Exercice 1 : Introduction à l'utilisation de Pyzo et aux opérations de base.¶
- En utilisant l'interpréteur (le Shell, grande fenêtre de droite), saisir chacune des instructions suivantes, valider (touche <Entrée>)puis observer le résultat renvoyé pour essayer de comprendre le rôle de l'instruction :
x = (1 + 9)**3
x
a = 11 // 4
a
a = 7 + 4 / 2
a
b = a
b
b = b + 1
b
# bonjour
- En utilisant l'éditeur (fenêtre de gauche), taper le scipt suivant et l'exécuter (touches <Ctrl> + <e> ou clic-droit sur l'onglet en haut à gauche et "Exécuter cet onglet").
x = 5
y = a**2
x = x + y
y = y // 2
En utilisant l'interpréteur, contrôler la valeur des variables x et y.
- Dans l'éditeur, effacer le script précédent, puis :
créer une variable var1 et lui affecter la valeur 2.
créer une variable var2 et lui affecter la valeur 2.5.
créer une variable somme et lui affecter la somme des variables var1 et var2.
créer une variable produit et lui affecter le produit des variables var1 et var2.
affecter la somme var1 + 3 à la variable var1.
affecter le produit var2 * 2 à la variable var2
À l'aide de l'interpréteur, vérifier les valeurs de somme, produit, var1 et var2 après l'exécution du script.
Utilisation du module turtle (Pyzo).¶
Exercice 2 :¶
Attention, il y a un bug entre Pyzo et le module turtle qui entraine un message noté en rouge dans le Shell : "turtle.Terminator". N'en tenez pas compte et relancez votre script.¶
- Dans l'éditeur, taper la ligne suivante :
import turtle
Cette ligne va nous permettre d'importer un "module", c'est un programme Python qui va nous permettre d'obtenir des fonctions qui ne sont pas implémenter nativement à Python sans qu'on ait besoin de les écrire nous même. Il existe différentes façons d'importer un module comme turtle, pour l'instant nous ne verrons que cette façon.
Sauvegarder le script avec le nom carre200.py.¶
Définir une variable nommée longueur et lui affecter la valeur 100.
Définir une variable nommée angle et lui affecter la valeur 90. À l'aide d'un commentaire, ajouter le type de ces 2 variables dans le script.
À la suite, saisir dans l'éditeur le code suivant :
turtle.forward(longueur)
turtle.left(angle)
turtle.forward(longueur)
turtle.right(angle)
turtle.forward(longueur)
turtle.circle(40, 180)
Exécuter le programme et observer, vous devriez facilement comprendre à quoi ont servi les lignes que vous venez de taper.
Changer la valeur de longueur en lui affectant la valeur 200 et la valeur de angle en lui affectant la valeur -45. Exécuter et observer.
À vous de faire : modifier le script pour obtenir un carré de coté 200 pixels.
Sauvegarder le script dans votre dossier SNT/chap1 sous le nom de carre200.py.
Exercice 3 :¶
- Créer un nouveau fichier et sauvegarder sous le nom personnage.py.
Dans l'éditeur :
Importer le module turtle.
Créer la variable body_color et lui affecter la valeur "red".
Créer la variable glass_color et lui affecter la valeur "skyblue".
À LA SUITE, Copier/Coller le code ci-dessous en Python puis remplacer les commentaires (avec les #) par les fonctions turtle correspondantes.
Sauvegarder et exécuter le programme.
turtle.pensize(20)
turtle.fillcolor(body_color)
turtle.begin_fill()
# tourne à droite de 90°
# avance de 50
# tourne à droite de 180°
# trace un arc de cercle de rayon 40 et d'angle -180°
# tourne à droite de 180°
# avance de 200
# tourne à droite de 180°
# trace un arc de cercle de rayon 100 et d'angle -180°
# recule de 20
# tourne à gauche de 15°
# trace un arc de cercle de rayon 500 et d'angle -20°
# recule de 20
# trace un arc de cercle de rayon 40 et d'angle -180°
# tourne à gauche de 7°
# recule de 50
# leve le stylo (turtle.up())
# tourne à gauche de 90°
# avance de 10
# tourne à droite de 90°
# baisse le stylo (turtle.down())
# tourne à droite de 240°
# trace un arc de cercle de rayon 50 et d'angle -70°
turtle.end_fill()
turtle.up()
turtle.right(230)
turtle.forward(100)
turtle.left(90)
turtle.forward(20)
turtle.right(90)
turtle.down()
turtle.fillcolor(glass_color)
turtle.begin_fill()
turtle.right(150)
turtle.circle(90, -55)
turtle.right(180)
turtle.forward(1)
turtle.right(180)
turtle.circle(10, -65)
turtle.right(180)
turtle.forward(110)
turtle.right(180)
turtle.circle(50, -190)
turtle.right(170)
turtle.forward(80)
turtle.right(180)
turtle.circle(45, -30)
turtle.end_fill()
turtle.up()
turtle.right(60)
turtle.forward(100)
turtle.right(90)
turtle.forward(75)
turtle.fillcolor(body_color)
turtle.begin_fill()
turtle.down()
turtle.forward(30)
turtle.right(255)
turtle.circle(300, -30)
turtle.right(260)
turtle.forward(30)
turtle.end_fill()
turtle.speed(0)