0% ont trouvé ce document utile (0 vote)
55 vues132 pages

Python 1ère Partie

Transféré par

Ahmed Belhadj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
55 vues132 pages

Python 1ère Partie

Transféré par

Ahmed Belhadj
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOC, PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 132

Formation Python

1ère partie

1
Plan

 Introduction

 I- Les structures de données

 II- Les Entrées – les sorties en Python

 III- Les structures conditionnelles

 IV- Les structures itératives

 V- Le graphique avec Python : Module Turtle

2
Introduction

1. C’est quoi Python?


 Python est un langage de programmation inventé par Guido van
Rossum en 1989.
 Python est un langage de programmation de haut niveau. Il est
proche des langues naturelles, ce qui facilite l’écriture des
programmes, en plus le programme peut faire fonctionner sans
aucune modification, sur des machines ou des systèmes
différents.
 python est un langage de programmation interprété et non
compilé
 Python est un excellent langage pour les débutants car il est
facile à apprendre.
Site officiel : https://www.python.org

3
Introduction
2. Un peu d’histoire
 1989 : Création du Python par Guido Van Rossum
 1994 : Publication de la version 1.0
 16 Octobre 2000 : Publication de la version 2.0
 3 décembre 2008 : Publication de la version 3.0
 27 Juin 2009 : Publication de la version 3.1
 20 Février 2011 : Publication de la version 3.2
 29 Septembre 2012 : Publication de la version 3.3
 16 Mars 2014 : Publication de la version 3.4
 13 Septembre 2015 : Publication de la version 3.5
 23 décembre 2016 : Publication de la version 3.6
 31 janvier 2018 : Publication de la version 3.7
 24 Décembre 2018 : Publication de la version 3.7.2
4
Introduction
3. Qui utilise Python?

5
Introduction
4. Pourquoi préférer Python aux autres langages?
Python devient le langage de programmation le plus populaire (mai 2018)

6
Introduction
• Python est gratuit : Téléchargement et installation de python est gratuit et
facile, Le code source est accessible
• Python est Facile à apprendre : la Structure et la syntaxe sont assez intuitive
et facile à saisir
• Indentation du code : Pas de begin et end explicites, ni d'accolades pour les
blocs d’instructions.
• Très documenté : les documentations officiels de python se trouvent dans :
https://docs/www.python.org
• Python est portable et multiplateforme

• Python est interprété : test de quelques lignes du code sans besoin d’écrire
un programme complet
• Python est puissant :Typage dynamique, gestion automatique de la mémoire,
riche en terme de bibliothèque, …
• Python est Joker : il est utilisé pour l’administration système, les applications
bureau, le web, jeux vidéo, ….
• Python c'est l'avenir : python c'est le métier de l'avenir, to make money

7
Introduction

5. Installation de Python
Sous Windows :
• Visiter le site :https://www.python.org/downloads/
• télécharger la dernière version pour windows (Download
Python 3.7.2) (Choisir la version compatible avec votre
système 32-bits ou bien 64-bits)
• Installer ensuite python
• Dans le menu windows vous trouvez Python
• ouvrir IDLE
• Commencer à coder
N.B. : Python est préinstallé sut la plupart des systèmes Unix,
Linux, Mac Os, etc…

8
Introduction
6. IDLE : Editeur pour Python
IDLE (Integreted DevLopement Environement) :
L’environnement de développement intégré IDLE est un logiciel
spécialement conçu pour faciliter la programmation en Python
IDLE offre un certain nombre de fonctionnalités pour vous aider à
développer vos programmes Python comme :
 Le Shell Python (Interpréteur interactive )
 L’éditeur de texte avec coloration syntaxique, l’auto complétion et
l’indentation
 Le débogueur intégré avec avancement par étape
N.B. :
 IDLE est l’éditeur standard fourni avec la distribution Python
 On peut utiliser d’autres éditeurs comme exemples : visual studio code,
MU, Pycharme, etc…

9
Introduction
Activité :
 Choisir un éditeur Python : Mu par exemple
 Taper ce code
#Mon premier code en Python : #c'est un commentaire
print('Salut mes collègues ')
print('Hello')
print('Mon premier code en python')
"""
ceci est un
commentaire long
"""

 Enregistrer le fichier sous le nom main.py dans un dossier nommé Projet et


exécuter ce code
N.B. : py est l'extension d'un fichier python
# un commentaire dans une seule ligne
''' un commentaire dans plusieurs lignes '''
""" un commentaire dans plusieurs lignes """
10
I- Les structures de données
Les constantes et les variables

1. Les constantes :
Activité :
Pi=3.14
Est ce qu'on peut modifier La valeur de Pi?
Pi est le rapport constant de la circonférence d'un cercle C à son
diamètre D (Pi=C/D=3.14)
Définition :
Une constante est une donnée dont la valeur ne peut subir
aucune modification au cours du programme

11
I- Les structures de données
Les constantes et les variables
Activité :
Ecrire un code en Python qui permet :
 D’afficher la constante pi,
 D’additionner pi avec 1, et de l’affecter à pi
 D’afficher pi encore une autre fois.
 Exécuter ce code, que constatez vous?
 Fermer l'éditeur IDLE et ouvrir de nouveau et afficher la constante pi.
Que constatez vous?
Solution :
from math import * #importer la bibliothèque du module math
print('Pi = ',pi) #Afficher la valeur de pi
pi=pi+1
print('Pi = ',pi) #Afficher la valeur de pi après modification
• On constate que la constante pi peut être changer au cours du programme
• On remarque que la valeur pi est toujours initialisé à 3.14

12
I- Les structures de données
Les constantes et les variables

2. Les variables :
Définition :
Une variable est un objet auquel une valeur peut être affectée et
qui peut subir des modifications au cours du traitement
Déclaration :
Nom_Variable = Valeur_Variable
= correspond à une affectation

13
I- Les structures de données
Les constantes et les variables

Activité :
Déclarer la variable age=17, puis faire appel à l'aide du nom age,
Age et AGE
Que constatez vous?
Solution :
age=17
print ('age=', age)
print ('age=', Age) #Erreur
print ('age=', AGE) #Erreur
N.B. :
• Les lettres majuscules et minuscules ne constituent la même
variable (age <> Age <> AGE)
• Python est sensible à la casse, ce qui signifie les variables
age, Age et AGE sont différentes
I- Les structures de données
Les types de données

Activité 5 :
a=32 et b=2.5
Déterminer le type des variables a et b.
Solution :
a=32
print(type(a)) #<class 'int'>
b=2.5
print(type(b)) #<class 'float'>
N.B. : Le modèle de données de Python est basé sur les objets.
Toute donnée manipulée est un objet avec un identifiant, un
type et une valeur.
• id() : renvoie l’identifiant d’un objet.
• type() : renvoie le type d’un objet.
• dir() : liste l’ensemble des fonctionnalités d’un objet.
I- Les structures de données
I.2 Les types de données
En Python, les types de données sont classés généralement en trois
catégories : les valeurs numériques, les valeurs alphanumériques et les
nombres complexes.
Les types de données les plus utilisés sont :
 Les entiers (Exemple 100)
 Les réels (Exemple 5.99) (on utilise un point décimal et non une
virgule)
 Le type complexe (Exemple 5+2j)
 Le type booléen
 Les chaines de caractères : mot / Phrase (Exemple 'Bonjour')
 Le type liste
 Le type tuple
 Le type set
 Le type dictionnaire
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

print(type(20)) #<class 'int'>

print(type(7.5)) #<class ‘float'>


print(type('Bonjour')) #<class ‘str'>
print(type(8<10)) #<class ‘bool'>
#<class ‘complex'>
print(type(9+2j))
x=7,5
print(type(x)) #<class ‘tuple'>
I- Les structures de données
I.2 Les types de données

1. Le type entier (int) :


a. Définition
:
Une variable de type int est un nombre sans virgule
flottante
Le type int n’est limité en taille que par la mémoire de la
machine (pratiquement la taille d’un entier en Python est
illimitée)
I- Les structures de données
I.2 Les types de données

b. Les opérateurs arithmétiques sur les


entiers :
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

a=20
b=3
print('a=',a)
print(type(a))
print(a,'+',b,'=',a+b) #La somme de a + b
print(a,'-',b,'=',a-b) #La soustraction de a - b
print(a,'*',b,'=',a*b) #La multiplication de a * b
print(a,'/',b,'=',a/b) #La division de a / b
print(a,'**',b,'=',a**b) #La puissance de a ** b
print(a,'//',b,'=',a//b) #La division entière de a // b
print(a,'%',b,'=',a%b) #Le reste de la division entière a %
b
I- Les structures de données
I.2 Les types de données

2. Le type réel (float) :


a. Définition
:
Une variable de type float est un nombre décimal avec
virgule flottante (avec un point décimal)
Un float en python doit être écrit avec un point décimal
(jamais avec une virgule)
Activité : Taper et exécuter le code suivant
a=2,5
print(type(a)) #<class ‘tuple'>
b=2.5
print(type(b)) #<class ‘float'>
N.B. 2,5 est de type tuple alors 2.5 est de type float
I- Les structures de données
I.2 Les types de données

b. Les opérateurs arithmétiques sur les


réels :
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

a=20.5
b=3.2
print('a=',a)
print(type(a))
print(a,'+',b,'=',a+b) #La somme de a + b
print(a,'-',b,'=',a-b) #La soustraction de a - b
print(a,'*',b,'=',a*b) #La multiplication de a * b
print(a,'/',b,'=',a/b) #La division de a / b
print(a,'**',b,'=',a**b) #La puissance de a ** b
print(a,'//',b,'=',a//b) #La division entière de a // b
print(a,'%',b,'=',a%b) #Le reste de la division entière a % b
I- Les structures de données
I.2 Les types de données
c. Les opérateurs de comparaison sur les entiers et
les réels :

N.B. : En Python il existe deux opérateurs d’identités is et is not


• x is y : Identité
• x is not y : Non identité
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant


x = 5.5
y=9
print(x>y) #False
print(x>=y) #False
print(x<y) #True
print(x<=y) #True
print(x==y) #False
print(x!=y) #True
print(2<=y<10) #True
print(x is y) # opérateur d’identité False
print (x is not y) # opérateur de non identité True

N.B.: Il ne faut pas confondre entre l’opérateur d’affectation « = » et l’opérateur de


comparaison «==» qui compare les valeurs de deux variables
Il ne faut pas confondre entre «is» « et «==», is compare les valeurs et aussi les
objets (exemple comparer deux listes ), alors == compare seulement les valeurs
I- Les structures de données
I.2 Les types de données

d. Ordre de priorité des opérateurs :


L'ordre de priorité est :
1. les parenthèses ()
2. la multiplication *, la division /, la division entière // et le reste de
la division entière %
3. L'addition + et la soustraction –
N.B. Si les opérateurs ont même priorité, on commence de gauche vers
la droite
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

a=7
b=5
c=2
d=9
w= a * b // d % c #1
x= (a * b) // (d % c) #35
y = a-b * c + d #6
z= (a-b) * c + d #13
print(w)
print(x)
print(y)
print(z)
I- Les structures de données
I.2 Les types de données

e. Les fonctions mathématiques :


Python fournit des fonctions mathématiques de base, regroupées dans le module
math.
Elle peuvent être regroupées en trois ensembles :
 Des constantes.
 Des fonctions de conversion ;
 Des fonctions trigonométriques ;
Pour utiliser les fonctions mathématiques, il faut commencer par importer le
module math, pour importer la bibliothèque mathématique on utilise :
from math import *
(* pour utiliser toutes les fonctions usuelles de math)
On peut préciser la fonction du module math, pour cela on utilise
from math import nom_fonction
par exemple from math import pi

N.B. : dir( ) retourne la liste des fonctions d'un module donné :


I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

from math import *


print(dir()) #Lister l’ensemble des fonctionnalités du module math
print(e) #Constante mathématique e (constante d’Euler)
print(pi) #Constante mathématique π
print(sqrt(16)) #Renvoie la racine carrée de x
print(abs(-8)) #Renvoie la valeur absolue de x
print(fabs(-8)) #Renvoie la valeur absolue de x en float
print(trunc(5.25)) #Renvoie la partie entière de x
print(pow(3, 4)) #Renvoie x**y
print(cos(pi/4)) #Renvoie le cosinus de x en radians.
print(degrees(pi/4)) #Convertit en degrés un angle exprimé en radians.
I- Les structures de données
I.2 Les types de données

f. Les nombres aléatoires :


Pour générer un nombre aléatoire avec python, on doit importer d’abord
la bibliothèque random
 Pour générer un nombre aléatoire de type entier, on doit appeler la
fonction randint
from random import randint
randint(BINF,BSUP)
(BINF, BSUP) représente l'intervalle au quelle générée le nombre
aléatoire de type entier
 Il est possible de générer un nombre aléatoire de type réel, on doit
d'abord appeler la fonction uniform de la bibliothèque random
from random import uniform
uniform(BINF,BSUP)
(BINF, BSUP) représente l'intervalle au quelle générée le nombre aléatoire
de type réel
I- Les structures de données
I.2 Les types de données
Activité : Taper et exécuter le code suivant

from random import randint


print(randint(0,5)) # génère un nombre aléatoire de type entier entre 0 et 5
from random import uniform
print(uniform(0,5)) # génère un nombre aléatoire de type réel entre 0 et 5
I- Les structures de données
I.2 Les types de données
3. Le type complexe :
a. Définition :
Une variable de type complexe est écrit en notation cartésienne
formée de deux flottants. Une partie réelle et une partie imaginaire
La partie imaginaire est suffixée par j
Exemple : x=2+5j
Activité : Taper et exécuter le code suivant
print(complex(4,2)) #4+2j
#(10+8j)
print(10+8j)
#1j
print(1j)
x=2+5j
print(x) #(2+5j)
I- Les structures de données
I.2 Les types de données

b. Les opérateurs sur les complexes :


 Addition
 Soustraction
 Multiplication
 Division
 Puissance
 Etc…
N.B. :
 Pour extraire la partie réelle d’un nombre complexe on utilise la
notation : nom_variable.real
 Pour extraire la partie imaginaire d’un nombre complexe on
utilise la notation : nom_variable.imag
 Le module cmath fournit des fonctions pour les nombres
complexes.
from cmath import *
I- Les structures de données
I.2 Les types de données
Activité : Taper et exécuter le code suivant
#Opérations sur les nombres complexes
print(complex(3,6)) #3+6j
x=complex(0,1)
print(x) #1j
x=2+5j
print(x.real) #2.0
print(x.imag) #5.0
print((2+3j) + (4-7j)) #Addition (6-4j)
a=complex(2,3)
b=complex(4,3)
print(a+b) #Addition (6+6j)
print(a-b) #Soustraction (-2+0j)
print(a*b) #Multiplication (-1+18j)
print(a/b) #Division (0.68+0.24j)
print(a**b) #Puissane
#(0.6672388935174383+8.834580067267249j)
I- Les structures de données
I.2 Les types de données

4. Le type booléen (bool) :


a. Définition :
Une variable de type bool peut prendre soit la valeur True
(vrai) ou False (faux)
Activité : Taper et exécuter le code suivant
#x=true Erreur
#y=false Erreur
#print(type(x))
#print(type(y))
x=True
y= False
print(type(x)) #<class ‘bool'>
print(type(y)) #<class ‘bool'>
N.B. On utilise True et False
I- Les structures de données
I.2 Les types de données

b. Les opérateurs sur les booléens :


I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

print(not(2<1)) #True
print((5>3) and (1==2)) #False
print((7==8)or(4!=3)) #True
I- Les structures de données
I.2 Les types de données

5. Le type chaîne de caractères (str) :


a. Définition :
Une variable de type str et un objet qui peut prendre une suite de
caractères
En python une chaîne de caractères est définit entre deux
apostrophes ou deux guillemets
I- Les structures de données
I.2 Les types de données
Activité : Taper et exécuter le code suivant

s1 = 'Salut mes collègues'


s2 = 'Aujourd\'hui' # séquence d'échappement \

#La séquence d'échappement \n représente un saut ligne :

s3 = 'Première ligne\nDeuxième ligne'


print (s1)
print (type(s1))
print(s2)
print(s3)
I- Les structures de données
I.2 Les types de données

b- Formatage de chaîne :
À chaque expression précédée d’un %, appelé marqueur de formatage, doit
correspondre une valeur de formatage

L’expression est de la forme %[P]c, où c est un caractère qui détermine le


type de valeur et P un éventuel paramètre supplémentaire, indiquant la
précision à utiliser pour la valeur à formater.

La précision est représentée par un entier préfixé par un point, qui


spécifie le nombre de chiffres significatifs après la virgule.
I- Les structures de données
I.2 Les types de données
Exemples de caractères de formatage :
 %d : entier;
 %f ou F% : réel ;
 %c : un seul caractère (sous la forme d’un string ou d’un entier) ;
 %s : renvoie le résultat de la primitive str() ;
 %o : octal non signé ;
 %u : décimal non signé ;
 %x ou %X : valeur hexadécimale, préfixée respectivement par 0x ou 0X ;
 %e ou %E : valeur à virgule flottante, de la forme xev ou xEv ;
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

print('%.2f dinars' %2.394765)


# 2.39 dinars
print('%E dinars' %2.394765)
#2.394765E+00 dinars
print('%s dinars' %'2.394')
#2.394 dinars
print('%d dinars' %2.394) #2 dinars
print ("Mon Prénom est %s j'ai %d ans !" % ('Anis', 22)) #Mon Prénom est Anis j'ai 22 ans !
I- Les structures de données
I.2 Les types de données

c. Accès aux éléments d'une chaîne :


Python offre des mécanismes permettant d’accéder séparément à chacun
des caractères d’une chaîne,
L’accès aux caractères se fait par index
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant

# Accès avec index


s1 = "Salut mes collègues“
print(s1[0]) #S
print(s1[3]) #u
print(s1[-1]) #s
print(s1[-5]) #è
print(s1[1:10]) # alut :slicing
s1[0]='C' mes
#Erreur
I- Les structures de données
I.2 Les types de données

d. Les opérations sur les chaînes de caractères : Helper


Les chaînes de caractères disposent de nombreuses fonctionnalités
appelées « méthodes » en POO (Programmation Orientée Objet) facilitant leur

manipulation

dir(str) # Liste toutes les méthodes des chaînes


I- Les structures de données
I.2 Les types de données

Exemples d’opérations sur les chaînes de caractères :

Fonctions Description
permet la concaténation de deux ou plusieurs chaînes des
+
caractères
* permet la répétition d’une chaîne n fois
Len(ch) Retourne le nombre de caractères d'une chaîne
Ch.strip() Enlève les espaces en début et en fin d'une chaîne Ch
Ch.lower() Mettre tous les caractères d’une chaîne Ch en minuscules
Ch.upper() Mettre tous les caractères d’une chaîne Ch en majuscules
Vérifier si tous les caractères d’une chaîne Ch sont en
Ch.isupper()
majuscules (True / False)
Ch.find(sous- Retourne la position d'une sous chaîne dans une chaîne
chaine) Ch
I- Les structures de données
I.2 Les types de données

Fonctions Description
Retourne le nombre d'occurrence d'une sous
Ch.count(sous-chaîne)
chaîne dans une chaîne Ch
Ch.replace(ancien-cara, nouveau- Remplacer les n premières occurrences d’un
car, n-prem-occ) caractère par un autre dans une chîne Ch
permet de créer une liste, qui contient les
Ch.split(caract_séparation )
éléments d'une chaine Ch en les séparant
(découper) par un caractère choisi
max(ch) Retourne le caractère maximum d'une chaîne
Min(ch) Retourne le caractère minimum d'une chaîne
Inclusion – retourne True si Ch1 est dans Ch
Ch1 in Ch
False si non
Non inclusion - retourne True si Ch1 n'est pas
Ch1 not in Ch
dans Ch, False si non
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant


s1 = "Salut mes collègues"
s2 = " La vie "
s3 = "est "
s4 = "belle"
print('Opérations sur les chaînes : Helper')
s5 = s2 + s3 + s4 # + permet la concaténation des chaînes s2, s3 et s4
s6 = s2 * 3 # * permet la répétition de s2 3 fois
print(s5)
print(s6)
print(len(s1)) #Retourne le nombre de caractères de s1
print(s2.strip()) #Enlève les espaces en début et enfin de la chaîne s2
print(len(s2))
print(len(s2.strip()))
print(s1.lower()) #Mettre tous les caractères de s1 en minuscules
print (s1.upper()) #Mettre tous les caractères de s1 en majuscules
print (s3.isupper()) #Vérifier si tous les caractères de s3 sont en majuscules
I- Les structures de données
I.2 Les types de données

Activité : Taper et exécuter le code suivant


s1 = "Salut mes collègues"
s2 = " La vie "
s3 = "Salut, mes amis, ça roule?"

print('Opérations sur les chaînes : Helper')


print(s1.find('mes')) #Retourne la position de ‘mes’ dans s1
print(s1.count('es')) #Retourne le nombre d'occurrence de ‘es’ dans s1
print (s1.replace("u", "w", 1)) #Remplacer le 1 premier occurrence de ‘u’ par ‘w’
print(s3.split(",")) #permet de créer une liste à partir de s3, ici le "," est le séparateur
print(s3.split(" "))
print(max(s2)) #Retourne le caractère max de s2
print(min(s2)) #Retourne le caractère min de s2
print("?" in s3) #vérifier si "?"existe ou non dans s3
print("mes" not in s1) #vérifier si "mes" n'existe pas dans s1

N.B. : in / not in : sont deux opérateurs d'appartenance pour les


séquences (chaînes, listes, …)
I- Les structures de données
I.2 Les types de données

Remarque :
Python est un langage dynamique : on peut changer le contenu de
variable, et le type sera changer automatiquement,
Activité : Taper et exécuter le code suivant
x=5
print(type(x)) # <class 'int'>
x='Bonjour'
print(type(x)) # <class 'str'>
x=False
print(type(x)) # <class 'bool'>
x=12.75
print(type(x)) # <class ‘float'>
x=7-3j
print(type(x)) # <class ‘complex'>
I- Les structures de données
I.2 Les types de données

Remarque :
Autre truc qui existe exclusivement avec python, c'est l’affectation
multiples (= multiple assign )
Activité : Taper et exécuter le code suivant
x,y,z =100,5.9,'Bonjour‘ #Multiple assign
print(x) #100
print(y) #5.9
print(z) #’Bonjour’

a=b=c=1
print(a)
print(b)
print(c)
I- Les structures de données
I.2 Les types de données

Activité : On se propose d’écrire un code en python qui permet la


permutation des valeurs des variables a=15 et b=20
Taper et exécuter le code suivant

a=15
b=20
a,b=b,a
print(a) #20
print(b) #15
I- Les structures de données
I.2 Les types de données
Remarque : Cast en python
Transtyper ou cast (en anglais) une variable : c’est-à-dire convertir une variable
d'un type à un autre
Activité : Taper et exécuter le code suivant
x=5
print('le type de x est : ')
print(type(x))
x=str(x) #str permet de transformer le type entier en string
print('le type de x est devenu : ')
print(type(x))
N.B. :
• Nom_var=str(Nom_var): permet de transformer une variable de type entier ou réel en
une chaîne
• Nom_var=int(Nom_var) : permet de convertir une variable de type chaîne ou réel en
entier
• Nom_var=float(Nom_var) : permet de convertir une variable de type chaîne ou
entier en réel
II- Les Entrées –Sorties en Python

L’utilisateur à besoin d’interagir avec le programme. En mode « console »


(on abordera les interfaces graphiques ultérieurement), on doit pouvoir saisir
ou entrer des informations, ce qui est généralement fait depuis une lecture
au clavier. Inversement, on doit pouvoir afficher ou sortir des informations,
ce qui correspond généralement à une écriture sur l’écran.

Entrée Sortie
II- Les Entrées –Sorties en Python
s entrées
La fonction input() effectue toujours une saisie en mode texte (la
valeur retournée est une chaîne) dont on peut ensuite changer le type
(on dit aussi « transtyper » ou cast en anglais)
Activité : Taper et exécuter le code suivant
f1=input("Entrez un flottant : ")
print(type(f1)) #<class ’str’>
f2=float(input("Entrez un autre flottant : "))
print(type(f2)) #<class ’float’>
x=input("Entrez un entier : ")
print(type(x)) #<class ’str’>
x=int(input("Entrez un entier : "))
print(type(x)) #<class ’int’>
y=int(input("Entrez un entier : ")) + 1
II- Les Entrées –Sorties en Python
Les sorties
La fonction print() permet d’afficher ou sortir des informations
sur écran
Activité : Taper et exécuter le code suivant

a=float(input("Entrez un flottant : "))


b=int(input("Entrez un entier : "))
print("La somme de ",a," + ", b, " =
",a+b) y=int(input("Entrez un entier : ")) +
1 print(y)
#Pour afficher par exemple ‘@’ en fin de ligne on utilise end="@"
print(y, end="@")
II- Les Entrées –Sorties en Python
II.2 Les sorties
N.B. : Les séquences d’échappement
À l’intérieur d’une chaîne, le caractère antislash (\) permet de donner
une signification spéciale à certaines séquences de caractères :
III- Les structures conditionnelles en Python

Présentation :
Une structure de contrôle conditionnelle permet
à un programme de modifier son traitement en
fonction d’une condition.
Une condition est une expression qui renvoie
une des deux valeurs suivantes : Vrai (True) ou
Faux (False)
III- Les structures conditionnelles en Python
La Forme simple réduite

a. Définition:

Une structure de contrôle conditionnelle est dite à


forme simple réduite lorsque le traitement dépend
d’une condition. Si la condition est évaluée à Vrai, le
traitement sera exécuté
III- Les structures conditionnelles en Python
La Forme simple réduite

b- Syntaxe
if condition: (: représente la fin de la condition)
traitement ou bien pass
#Retour à la ligne sans
indentation
N.B. :
 Pour identifier les instructions composées, Python utilise la notion
d’indentation significative. Cette syntaxe met en lumière un bloc
d’instructions et permet d’améliorer la lisibilité des programmes
sources.
 Toutes les instructions au même niveau d’indentation appartiennent
au même bloc.
 L’instruction pass ne fait rien. Elle peut être utilisée lorsqu’une
instruction est nécessaire pour fournir une syntaxe correcte, mais
qu’aucune action ne doit être effectuée.
III- Les structures conditionnelles en Python
La Forme simple réduite

Activité : Taper et exécuter le code suivant

ph=6.0
if ph<7.0:
print("C’est un acide.")

if ph>7.0:
print("C’est une base.")
III- Les structures conditionnelles en Python
La Forme complète

a. Définition :

Une structure de contrôle conditionnelle à forme complète, si suivant la


valeur d’une condition, on exécute soit le traitement 1 soit le traitement 2
Si la condition est évaluée à Vraie, alors le traitement 1 est exécuté,
dans le cas contraire le traitement 2 est exécuté
III- Les structures conditionnelles en Python
III.2 La Forme complète

b. Syntaxe

if condition : (: représente la fin de la condition)


traitement1
else :
traitement2 ou bien pass
#Retour à la ligne sans indentation
III- Les structures conditionnelles en Python
La Forme complète

Activité : Taper et exécuter le code suivant

n=5
if n<=0:
print(n, 'est négatif ou nul')
else:
print(n,'est positif')
III- Les structures conditionnelles en Python
La Forme généralisée

a. Définition :
Une structure de contrôle conditionnelle généralisée permet de
résoudre des problèmes comportant plus de deux traitement en
fonction des conditions
L’exécution d’un traitement entraîne automatiquement le non
exécution des autres traitements
III- Les structures conditionnelles en Python
III.3 La Forme généralisée

b. Syntaxe :
if condition1 : (: représente la fin de la condition)
traitement1
elif condition2 :
traitement2 ou bien pass
elif condition3 :
traitement3 ou bien pass
........
else:
traitementn
#Retour à la ligne sans indentation
:Avec python, il faut respecter bien l'alignement, c'est à dire les conditions doivent être en
même niveau et les traitements doivent être aussi au même niveau (notion d’indentation)
III- Les structures conditionnelles en Python
III.3 La Forme généralisée

Activité : Taper et exécuter le code suivant

abonnes = 100
if abonnes > 100:
print('Vous continuez avec youtube')
elif abonnes > 50:
print('Faites un autre effort')
else:
print('Arrêtez avec youtube')
III- Les structures conditionnelles en Python
Applications :

Application : (Parité d’un nombre)


Ecrire un code en Python qui permet de lire un
nombre et vérifier s’il est pair ou impair.
S'il est pair, calculer son carré, s'il est impair calculer
son cube
III- Les structures conditionnelles en Python
Applications :

Solution : Taper et exécuter le code suivant

Nb=int(input('Saisir un nombre : '))


print(type(Nb))
if (Nb % 2 == 0):
print(Nb ** 2)
else:
print(Nb ** 3)
III- Les structures conditionnelles en Python
Applications :

Application : (concours de mannequins)


Ecrire un code en Python qui permet d’afficher le résultat d’un concours de
mannequin :
 Si le candidat est un homme :
 S’il possède une taille entre 80 et 140 cm, il n'est pas accepté,
 S’il possède une taille entre 140 et 170 cm, on a pas encore décidé
 S’il possède une taille entre 170 et 200 cm, donc il est accepté
 Si le candidat est une femme :
 Si elle possède une taille entre 60 et 120 cm, elle n'est
pas acceptée,
 Si elle possède une taille entre 120 et 150 cm, on a pas
encore décidé
 Si elle possède une taille une taille plus de 150 cm, donc elle est
acceptée
III- Les structures conditionnelles en Python
Applications :

Solution :
sexe=input('Entrer votre sexe : ')
taille=int(input('Entrer votre taille :
')) print(type(sexe))
print(type(taille))
if sexe=='Homme':
if (taille > 80 and taille <= 140 ):
print('Désolé vous n\'êtes pas accepté ')
elif (taille > 140 and taille <= 170 ):
pass #L’instruction pass ne fait rien, aucune action ne doit être effectuée
elif (taille > 170) and (taille <= 200):
print('Vous êtes accepté ')
else:
print('Votre taille n\'est pas concernée ')
elif sexe=='Femme':
if (taille > 60 and taille <= 120 ):
print('Désolé vous n\'êtes pas accepté ')
elif (taille > 120 and taille <= 150 ):
pass #L’instruction pass ne fait rien, aucune action ne doit être effectuée
elif (taille > 150):
print('Vous êtes accepté ')
else:
print('Votre taille n\'est pas concernée ')
else:
print('Ce sexe n\'existe pas')
IV- Les structures itératives en Python : Les boucles

On doit utiliser une boucle pour répéter une ou plusieurs


instructions
Python propose deux sortes de boucles :
 La boucle for
 La boucle while
IV- Les structures itératives en Python : Les boucles
La boucle for

a- Définition :
La boucle For permet de répéter une ou plusieurs instructions
un nombre fini de fois connu à l'avance
IV- Les structures itératives en Python : Les boucles
La boucle for

b- Syntaxe :
Condition
compteur in
for sequence :
traitement
else:
traitement
#Retour à la ligne sans indentation
N.B. :
• Les éléments de la séquence sont issus d’une chaîne de caractères, d’une
liste, …
• Le compteur prend successivement la valeur de chaque élément de la
séquence, en commençant par le premier
• Lorsque l’exécution est achevée, un traitement optionnel présenté par
else est à son tour exécuté.
IV- Les structures itératives en Python : Les boucles
La boucle for

Activité : Taper et exécuter le code suivant

for lettre in "ciao": #la séquence est une chaîne


print(lettre)
else:
print("Fin")
Exécution :
c
i
a
o
Fin
>>>
IV- Les structures itératives en Python : Les boucles
La boucle for

Activité : Taper et exécuter le code suivant

for x in [2, 'a', 3.14]: #La séquence est une liste


print(x)

Exécution :
2
a
3.14
>>>
IV- Les structures itératives en Python : Les boucles
La boucle for

Autre Syntaxe : Utilisation de range()

for compteur in range (Bor_inf, Bor_sup, Pas) :


traitement
#Retour à la ligne sans indentation

N.B. :
 bor_inf : représente la borne inférieure du compteur, c'est le point départ, si
on ne met pas la borne inférieure, par défaut la borne inférieure
commence par 0
 bor_sup : représente la borne supérieure du compteur, c'est le point d'arrêt
du compteur, (cette valeur est exclue), donc il faut obligatoirement
mentionné cette valeur
 Pas : représente la valeur d’avancement du compteur, par défaut le pas = 1
IV- Les structures itératives en Python : Les boucles
La boucle for

Activité : Taper et exécuter le code suivant

for i in range(5,17,3): #le compteur commence par 5, le point d’arrivé =17 (exclue), le pas =3
print(i)

5
8
11
14
>>>
IV- Les structures itératives en Python : Les boucles
La boucle for

Ou bien :

for compteur in range (nombre_répétition) :


traitement
#Retour à la ligne sans indentation
IV- Les structures itératives en Python : Les boucles
La boucle for

Activité : Taper et exécuter le code suivant

for i in range(5): #nb de répétition = 5, le compteur commence par 0, le point d’arrivé =4, le pas =1
print(i)

Exécution :
0
1
2
3
4
>>>
IV- Les structures itératives en Python : Les boucles
La boucle for

Application :

Ecrire un code en Python qui permet de lire une


chaîne ch, et d’afficher les voyelles qui existe dans
cette chaîne ch ainsi que leur nombre.
IV- Les structures itératives en Python : Les boucles
La boucle for

Solution : Taper et exécuter le code suivant

ch=input('Saisir une châine : ')


nbvoy=0 #initialisation
For i in ch :
if i in 'aeiouy‘ :
print(i) #Affichage des voyelles
nbvoy=nbvoy+1 #incrémentation
print('Le nombre de voyelles dans',ch,' = ',nbvoy)
IV- Les structures itératives en Python : Les boucles
La boucle while

a- Définition :
La boucle while permet de répéter une ou plusieurs
instructions tant qu’une expression est vérifiée en renvoyant True
Lorsque l’expression n’est plus vraie, la partie else est exécutée si elle
existe (optionnelle) et la boucle s’arrête
Cette structure est utilisée lorsque le nombre de répétition est inconnu à
l’avance
IV- Les structures itératives en Python : Les boucles
IV.2 La boucle while

b- Syntaxe :
Condition

while condition :
traitement
else:
traitement
#Retour à la ligne sans indentation
N.B. :
• Lorsque l’exécution est achevée (la condition est évaluée à False) , un
traitement optionnel présenté par else est à son tour exécuté.
IV- Les structures itératives en Python : Les boucles
IV.2 La boucle while

Activité : Taper et exécuter le code suivant


i=0
while i < 4:
print(str(i))
i += 1
else:
print('end')
Exécution :
0
1
2
3
end
>>>
IV- Les structures itératives en Python : Les boucles
IV.2 La boucle while

Activité : Taper et exécuter le code suivant


#saisie filtrée ou contrôlée
n = int(input('Entrez un entier entre [1 .. 10] : '))
while not(1 <= n <= 10) :
n = int(input('Entrez un entier entre [1 .. 10], S.V.P. : '))
else :
print('Bravo')
Exécution :
Entrez un entier entre [1 .. 10] : 15
Entrez un entier entre [1 .. 10], S.V.P. :
20 Entrez un entier entre [1 .. 10], S.V.P.
: 30 Entrez un entier entre [1 .. 10],
S.V.P. : 5 Bravo
>>>
IV- Les structures itératives en Python : Les boucles
IV.2 La boucle while

Application :
Ecrire un programme en Python qui permet de
calculer le PGCD de deux entiers positifs donnés a et
b par la méthode de soustraction (différence)
• Pgcd(a, b)=Pgcd(a-b, a) si a>b
• Pgcd(a, b)=Pgcd(a, b-a) si b>a
• Pgcd(a, b)=a si a=b
IV- Les structures itératives en Python : Les boucles
La boucle while

Solution : Taper et exécuter le code suivant

a = int(input('saisir a : '))
while not(a>0) :
a = int(input('Saisir a : '))
b = int(input('saisir b : '))
while not(b>0) :
b = int(input('Saisir b : '))
while a!= b :
if a>b :
a=a-b
else:
b=b-a
print('Le PGCD = ', a)
IV- Les structures itératives en Python : Les boucles
Les boucles imbriquées

Activité : Taper et exécuter le code suivant


#Les boucles imbriquées :
for i in range(4):
for j in range(3):
print(i,j)
Exécution :
00
01
02
10
11
12
20
21
22
30
31
32
>>>
IV- Les structures itératives en Python : Les boucles
Contrôle de boucle (break, continue)

 break : permet d'arrêter (interrompre) et sortir de la boucle


Activité : Taper et exécuter le code suivant
secret=50
for i in range(10000):
if i==secret:
print(i)
break # Arrêt de la boucle

Exécution :

50
>>>
IV- Les structures itératives en Python : Les boucles
IV.4 Contrôle de boucle (break, continue)

 continue : permet d'arrêter (interrompre) l'itération courante et


passe à l'itération suivante
Activité : Taper et exécuter le code suivant
for i in range(5):
if i==2:
continue # Arrêter l’itération courante et passer à l’itération suivante
print(i)
Exécution :
0
1
3
4
>>>
V- Le graphique avec Python
Module turtle

Le module turtle permet de déplacer un point dans un espace


2D (ce point est souvent vu comme une tortue), et ainsi de
réaliser des dessins.
Afin de pouvoir utiliser ce module, il faut appeler le module en
utilisant la ligne suivante :

from turtle import *

N.B. : Le module turtle s'appuie sur le module tkinter (Tkinter pour


les versions de python antérieures à 3)
V- Le graphique avec Python
Module turtle

Les Commandes de base pour créer des graphiques avec le module turtle
sont les suivantes :
 up(), penup() : Relever le crayon (pour pouvoir avancer sans dessiner)
 down() : Abaisser le crayon (pour pouvoir recommencer à dessiner)
 speed(''texte'') : définir la vitesse de la tortue
 forward(distance) : avancer d’une distance (en pixel)
 backward(distance) : Reculer d’une distance (en pixel)
 left(angle) : Tourner à gauche d'un angle donné (exprimé en degré)
 right(angle) : tourner à droite d'un angle donné (exprimé en degré)
 goto(x,y) : se déplacer vers le point de coordonnées (x,y)
 width(épaisseur) ou bien pensize(épaisseur) : définir l‘épaisseur du tracé
V- Le graphique avec Python
Module turtle

 circle(rayon, angle) : dessiner un cercle de rayon donné, l’angle de


l’arc de cercle est facultatif. (par défaut 360, soit un cercle complet)
 write(''texte'') : écrire un texte
 color(''couleur'') ou bien pencolor(‘couleur’) : définir la couleur du
trait (par défaut la couleur du tracé est noire)
 bgcolor(''couleur'') : définir la couleur de fond de la fenêtre
 fillcolor(''couleur'') : définir la couleur de remplissage d’une forme
 begin_fill() ou bien fill(1) : Remplir un contour fermé à l'aide de la
couleur sélectionnée (on termine la construction par end_fill() ou
bien fill(0))
 reset() : effacer tout
 done() : arrêter le dessin
 title (‘titre’) : Donne un titre à la fenêtre (par défaut le titre est Turtle
Graphics)
 hideturtle() : Cacher le pointeur de la tortue
V- Le graphique avec Python
Module turtle

N.B. :
 Pour la commande color(''couleur'') , les couleurs suivantes peuvent
être choisies : ‘blue’, ‘red’, ‘black’, ‘green’, ‘pink’, ‘orange’, ‘white’, ‘brown’,
‘yellow’, ‘grey’, ‘purple’, etc…
 Pour la commande speed(''texte'') , on peut choisir (du plus lent au
plus rapide) : ‘slowest’, ‘slow’, ‘normal’, ‘fast’ et ‘fastest’.
 Ne pas oublier d'utiliser la fonction up() avant d'utiliser goto(x,y) car
sinon il tracera le parcours effectué
V- Le graphique avec Python
Module turtle

Activité : création deux segments perpendiculaires


Ce dessin est composé de deux segments perpendiculaires :
 Le premier segment est de couleur noir, d’épaisseur 3 et de
taille 120,
 le deuxième segment est perpendiculaire au premier
segment, d’épaisseur 2, de couleur vert et de taille 80
(La Vitesse de la tortue est 'slowest‘)

Tourne vers la Tourne vers la


gauche droite
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

from turtle import *


speed('slowest') #Vitesse de la tortue est 'slowest'
width(3) #l‘épaisseur du trait = 3
forward(120) #avance de 120
width(2) #l‘épaisseur du trait = 2
color('green') #changer la couleur du trait en vert
left(90) #tourne vers la gauche de 90 degrés
#right(90) #tourne vers la droite de 90 degrés
forward(80) #avance de 80
done() #arrête le dessin
V- Le graphique avec Python
Module turtle

Activité : création d’un rectangle


Ce dessin est composé de quatre segments perpendiculaires, égaux
deux à deux (120 et 80)
Chaque segment est de couleur vert et d’épaisseur 3.
Créer ce rectangle
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d'un rectangle


from turtle import *
pensize(3) #l‘épaisseur du trait = 3
color('green') #changer la couleur du trait en vert
forward(120) #avancement d'une distance = 120
left(90) #tourne vers la gauche de 90 degrés
forward(80) #avancement d'une distance = 80
left(90) #tourne vers la gauche de 90 degrés
forward(120) #avancement d'une distance = 120
left(90) #tourne vers la gauche de 90 degrés
forward(80) #avancement d'une distance = 80
V- Le graphique avec Python
Module turtle

Activité : création d’un rectangle coloré en utilisant une boucle


Créer un rectangle de dimension (120 * 80)
 Le fond du fenêtre est de couleur noir
 Chaque segment est de couleur bleu et d’épaisseur 3.
 Le rectangle est coloré en blanc
 Le titre du fenêtre est Rectangle
Créer ce rectangle en utilisant une boucle
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant


#Création d'un rectangle (en utilisant une boucle)
from turtle import *
pensize(3) #l‘épaisseur du trait = 3
bgcolor(‘black') #couleur de fond du fenêtre est noire
color(‘blue') #couleur du trait est bleu
fillcolor(‘white') #couleur de remplissage est blanc
begin_fill() #démarre le remplissage
for i in range(2): #Boucle for : Répétition deux fois
forward(120) #avancement d'une distance = 120
left(90) #tourne vers la gauche de 90 degrés
forward(80) #avancement d'une distance = 80
left(90) #tourne vers la gauche de 90 degrés
end_fill() #fin de remplissage
title ("Rectangle") #Titre du fenêtre
V- Le graphique avec Python
Module turtle

Activité : création d’un carré


Ce dessin est composé de quatre segments égaux perpendiculaires,
Chaque segment est de couleur bleu, d’épaisseur 3 et de taille 100.
En utilisant une boucle, créer ce carré.
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d'un carré


from turtle import *
color("blue") #couleur du tracé bleu
pensize(3) #Epaisseur = 3
for i in range(4) : #Boucle for (répétition 4 fois), 4 segments
forward(100) # distance=100
right(90) # tourner à droite d’angle 90 degrés
V- Le graphique avec Python
Module turtle

Activité : création d’un pentagone :


Ce dessin est composé de cinq segments égaux
Chaque segment est de couleur violet, d’épaisseur 5 et de taille 100 et
d’angle=72°.
En utilisant une boucle, créer ce polygone (pentagone).
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d'un polygone


from turtle import *
color('purple') #Couleur du tracé est violet
width(5) #Epaisseur du tracé = 5
i=0 #initialisation du compteur
while i < 5: #boucle while : (répétition 5 fois)
forward(100) #Avancement d'une distance =
100 left(72) #Tourne à gauche (Angle = 72°)
i += 1 #incrémentation du compteur
done() #Arrêter le dessin
V- Le graphique avec Python
Module turtle

Activité : création des formes au choix


Ce dessin est composé d’un nombre donné de segments égaux,
chaque segment est de couleur rouge, d’épaisseur 4 et de taille 100.
En utilisant une boucle, créer ce dessin : Exemple de formes :
Forme à 3 Segments Forme à 6 Segments Forme à 8 Segments
Triangle équilatéral Hexagone Octogone
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

# Création des formes au choix (Entrer le nombre de segments)

from turtle import *


color("red")
pensize(4)
x = int (input('Donner le nombre de segments : '))
for i in range(x) : #Répétition x fois (x représente le nombre de segments)

forward(100) #Avancement d'une distance = 100

left(360/x) #L'angle = 360 / nombre de segments donné


V- Le graphique avec Python
Module turtle

Activité : création de labyrinthe


Ce labyrinthe est constitué de 25 segments, chaque segment est de
couleur noir, d’épaisseur 3
Chaque segment avance d’une distance égale à la distance du
segment précédent + 10, et faire un tour à gauche de 90 degrés
En utilisant une boucle, créer ce labyrinthe.
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d’un labyrinthe


from turtle import *
color("black") #couleur du trait : noir
pensize(3) #Epaisseur : 3
x = 25 #Nombre de segments
d=0 #initialisation
for i in range(x) : #Boucle : 25 segments
d=d+10 #distance = distance du segment précedent +10
forward(d) #Avancement d'une distance d
left(90) #Tourner à gauche de 90°
V- Le graphique avec Python
Module turtle

Activité : création d’une étoile


Ce dessin est composé de 5 segments égaux d’angle 144, Chaque
segment est de couleur rouge, d’épaisseur 3 et de taille 75.
En utilisant une boucle, créer cette étoile.

PROF. Yassine Ben Salah 110


V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

# Création d'une étoile


from turtle import *
color("red") #couleur du tracé : rouge
pensize(3) #Epaisseur : 3
x=5 #Nombre de segments
for i in range(x) : #Répétition 5 fois (5 segments d'une étoile)
forward(75) #Avancement d’une distance = 75
right(144) #Tourner à droite d'angle = 144

111
V- Le graphique avec Python
Module turtle

Activité : création d’un dessin


Ce dessin est composé de 20 segments, chaque segment est de couleur
vert, d’épaisseur 3
Chaque segment avance d’une distance égale à la distance du segment
précédent + 10 et faire un tour à droite de 144 degrés
En utilisant une boucle, créer cette forme.

112
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

from turtle import *


color("green") #Couleur : vert
pensize(3) #Epaisseur : 3
x = 20 #Nombre de segments : 20
d=0 #Initialisation
for i in range(x) : #Boucle : 20 segments
d=d+10 #distance = distance du segment précèdent +10
forward(d) #Avancement d'une distance d
right(144) #Tourner à droite de 144°

113
V- Le graphique avec Python
Module turtle

Activité : création d’un cercle


Créer un cercle de couleur jaune, d’épaisseur de tracé = 10, et de
rayon = 40

114
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d’un cercle


from turtle import *
pensize(10) #Epaisseur = 10
color('yellow') #Couleur = 'jaune'
circle(40) #Cercle de rayon = 40

115
V- Le graphique avec Python
Module turtle

Activité : création d’un demi cercle de coloré fond


Créer un demi cercle de fond bleu, d’épaisseur de tracé = 5, et de
rayon = 60

116
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d'un Demi cercle de fond coloré


from turtle import *
pensize(5) #Epaisseur = 10
color('blue') #Couleur = 'bleu'
#left(270) #Tourner à gauche d'angle 90, 180, ou bien 270
begin_fill() #démarrage de remplissage
circle(60, 180) #Cercle de rayon = 60, 180 = 360 / 2 (Demi
cercle) end_fill() #fin de remplissage

117
V- Le graphique avec Python
Module turtle

Activité : création d’une forme de 5 cercles : V1


Créer une forme composée de 5 cercle de couleur jaune, d’épaisseur
de tracé = 4, et de rayon = 75, en commençant par le point de
coordonnées (50,60) puis en ce déplaçant l’abscisse à une distance = 40
et ainsi de suite
En utilisant une boucle, créer cette forme.

118
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d’une forme composé de 5 cercles


from turtle import *
pensize(4) #Epaisseur = 4
color('yellow') #Couleur = 'jaune'
x=50 #Abscisse
y=60 #Ordonnée
penup() #Relever le crayon (avancer sans dessiner)
for i in range(5): #Boucles : 5 cercles
goto(x,y) #se déplacer vers le point de coordonnées (x,y)
down() #Abaisser le crayon (recommencer à dessiner)
circle(75) #cercle de rayon = 75
x=x+40 #Avancement de l'abscisse

119
V- Le graphique avec Python
Module turtle

Activité : création d’une forme de 5 cercles : V2


Créer une forme composée de 5 cercle de couleur bleu, d’épaisseur de
tracé = 6, et de rayon = 40, en commençant par le point de coordonnées
(0,0) puis en ce déplaçant l’abscisse à une distance = 50 et ainsi de suite
En utilisant une boucle, créer cette forme.

PROF. Yassine Ben Salah 120


V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant

#Création d’une forme composé de 5 cercles V2


from turtle import *
pensize(6) # Epaisseur : 6
color('blue') # Couleur du trace : bleu
for i in range(0,250,50): #Boucle, 5 cercles, incrémentation = 50
penup() #avancer sans dessiner
goto(i,0) #se déplacer vers le point de coordonnées
(x,y) pendown() # recommencer à dessiner
circle(40) #cercle de rayon = 40

121
V- Le graphique avec Python
Module turtle

Activité : Création de créneaux :


 Chaque segment est composé de 6 créneaux
 Les créneaux ont un côté de longueur 10.
Vous pouvez utiliser deux boucles imbriquées pour créer cette forme

122
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant


#Création de créneaux
from turtle import *
speed('fast') #La vitesse est rapide
pensize(5) #épaisseur 5
color('green') #couleur : vert
for i in range(4) : #boucle for : 4 segments
for j in range(6) : #boucle for 6 créneaux
forward(10) #Avancement de 10
right(90) #tourner à droite 90°
forward(10) #Avancement de 10
left(90) #tourner à gauche 90°
forward(10) #Avancement de 10
left(90) #tourner à gauche 90°
forward(10) #Avancement de 10
right(90) #tourner à droite 90°
forward(10) #Avancement de 10
left(90) #tourner à gauche 90°

123
V- Le graphique avec Python
Module turtle

Activité : créer le dessin suivant :

Pour obtenir ce dessin, on peut observer qu'il est constitué de


11 segments égaux (dimension = 150), chaque segment tourne
à gauche par rapport au segment précédent et fait un angle de
150°
En utilisant une boucle, créer cette forme

124
V- Le graphique avec Pythn
Module turtle

Solution : Taper et exécuter le code suivant

from turtle import*


width(4) #Epaisseur : 4
color('yellow') #Couleur du trace: jaune
fillcolor('red') #Couleur du remplissage : rouge
begin_fill() #Démarrage de remplissage
a=0 #Initialisation
while a<12: #boucle while : 11 segments
a=a+1 #Incrémentation
forward(150) #Avancement de 150 pixels
left(150) #Tourner à gauche de 150°
end_fill() #Fin de remplissage

125
V- Le graphique avec Python
Module turtle

Activité : créer le dessin suivant :

ce dessin est constitué de 36 cercles de même rayon (80 dans


notre cas), avec un décalage à gauche de 10 degrés entre deux
cercles successifs.
En utilisant une boucle, créer cette forme

126
V- Le graphique avec Pythn
Module turtle

Solution : Taper et exécuter le code suivant

from turtle import *


pensize(4) #Epaisseur
#color(‘black') #Couleur du tracé : noire
for i in range(36): #boucle : 36 cercles
for col in ['blue', 'yellow']: #boucle : liste : couleur, ['blue', 'yellow']
color(col) #couleur
penup() # lever le crayon
left(10) #tourner à gauche de 10°
pendown() #Abaisser le crayon
circle(80) #cercle de rayon 80

127
V- Le graphique avec Python
Module turtle

Activité : création du drapeau de la Tunisie


Le drapeau de la Tunisie est composé d’un rectangle de fond rouge,
d’un cercle de fond blanc et à l’intérieur du cercle, on trouve un croissant et
un étoile de fond rouge

128
V- Le graphique avec Python
Module turtle

Solution : Taper et exécuter le code suivant


#Drapeau de la Tunisie
from turtle import *
hideturtle() #Cacher le pointeur de la tortue
#Création du Rectangle
up() #relever le crayon
goto(-200,-100) #déplacer le
pointeur down() #Abaisser le crayon
color('red')
width(5)
#fillcolor('red')
begin_fill()
i=0
while i < 2 :
forward(400)
left(90)
forward(300)
left(90)
i=i+1
end_fill()

129
V- Le graphique avec Python
Module turtle

#Cercle 1
up()
goto(0,-45)
pensize(5) #Epaisseur = 5
color('white') #Couleur = 'blanc'
begin_fill()
down()
circle(100) #Cercle de rayon = 80
end_fill()

#Création du croissant en utilisant deux cercles (rouge et blanc) ey de rayons différents


#Cercle 2
up()
goto(10,-10)
pensize(5) #Epaisseur = 5
color('red') #Couleur =
'rouge' begin_fill()
down()
circle(60) #Cercle de rayon = 60
end_fill()

130
V- Le graphique avec Python
Module turtle

#Cercle 3
up()
goto(30,0)
pensize(5) #Epaisseur = 5
color('white') #Couleur = 'white'
begin_fill()
down()
circle(50) #Cercle de rayon = 50
end_fill()

# Création de l'étoile
up()
goto(0,60)
color("red")
pensize(5)
down()
begin_fill()
x=5
for i in range(x) : #Répétition 5 fois (5 segments d'une
étoile forward(60) #Avancement d'une distance = 75
right(144) #Tourner à droite d'angle = 144
end_fill()

131

Vous aimerez peut-être aussi