2. INTRODUCTION
PYTHON : SIMPLE MAIS ÉVOLUÉ
▸ Langage très pratique pour débuter
▸ Pas de problème de compilateur
▸ Pas de typage de données
▸ Mais plutôt évolué
▸ Modèle objet possible
▸ Utilisé dans de nombreux secteurs (en particulier
FinTech) pour son efficacité
3. INTRODUCTION
NOTIONS DE BASE DE PROGRAMMATION
▸ Quelques notions suffisent pour pouvoir mettre en place
des algorithmes relativement évolués
▸ Variables
▸ Tests
▸ Fonctions
▸ Boucles
4. INTRODUCTION
VARIABLES
▸ Concept : stocker dans la mémoire de l'ordinateur des
données afin de les réutiliser dans le cadre du programme
▸ Contrairement à des données en base, une variable est
volatile : elle se perd une fois le programme arrêté
▸ Un programme informatique n'est finalement qu'un
traitement de données
▸ Cette notion est donc fondamentale
5. LES VARIABLES
TYPAGE DE VARIABLES
▸ Les variables suivent les grands types de données utilisées dans
la vie courante :
▸ phrases (on dit "chaînes de caractères")
▸ nombres entiers
▸ nombres à virgule
▸ L'informatique rajoute le type 'booléen' : oui/non, vrai/faux
▸ En Python, ces types ne sont pas explicites, mais sont bien
présents
6. LES VARIABLES
DÉFINIR UNE VARIABLE EN PYTHON
▸ Il suffit de la nommer et de lui définir un contenu
▸ Le contenu va permettre à Python d'en deviner son type
▸ Une chaîne de caractères se caractérise par des guillemets
a=12
s="Bonjour"
7. LES VARIABLES
NOMMER UNE VARIABLE
▸ Mieux vaut utiliser des noms explicites
▸ Attention :
▸ pas d'espace
▸ pas de caractère spécial
▸ pas d'accent
s="Bob" mon prénom="Bob"
monPrenom="Bob"✔
𐄂𐄂 mon_prenom="Bob"✔
mon-prenom="Bob"𐄂
8. LES VARIABLES
MON PREMIER PROGRAMME
▸ Un programme est un fichier texte qui contient diverses
instructions qui se succèdent
▸ Une instruction par ligne
▸ Pas de séparateur style point-virgule
▸ Python peut s'installer sur un poste de travail relativement
facilement
▸ Mais on peut également utiliser des outils en ligne tels que repl.it
qui propose d'éditer et exécuter ses programmes dans un
navigateur, sans aucune exécution
9. LES VARIABLES
ENTRÉES ET SORTIES
▸ Un programme n'a de sens que s'il interagit avec son
environnement
▸ Avec l'utilisateur, on peut parler d'entrées/sorties :
▸ En entrée, l'utilisateur tape des données au clavier
▸ En sortie, le programme affiche des résultats à l'écran
10. LES VARIABLES
ENTRÉES ET SORTIES
▸ L'instruction input permet de saisir une donnée au clavier
et de la stocker dans une variable
▸ L'instruction print permet d'afficher une variable, ou un
texte, à l'écran
prenom=input()
print("Bonjour")
print(prenom)
print("Bonjour",prenom)
11. LES VARIABLES
MON PREMIER PROGRAMME
age=12
print(age)
▸ On peut bien sûr faire des calculs lors des affectations
calcul=10*2+1
print(calcul)
▸ Utiliser plusieurs variables permet de découper son
traitement
prixHT=12
prixTTC=prixHT*1.2
print(prixTTC)
12. LES VARIABLES
MON PREMIER PROGRAMME, SUITE ET FIN
print("Quel est ton prénom ?")
prenom=input()
print("Bonjour",prenom)
# saisie d'une donnée en entrée
print("Quel est ton prénom ?")
prenom=input()
# affichage du résultat
print("Bonjour",prenom)
▸ Le caractère # va permettre de commenter son programme, ce
qui est toujours une bonne idée
13. LES TESTS
SI...ALORS...SINON... TRAITER UNE DONNÉE PAR LES TESTS
▸ Un programme n'a de sens que s'il effectue des
raisonnements
▸ Il va reproduire à grande vitesse des raisonnements
humains qui doivent être précis et sans ambiguïté
▸ La base d'un algorithme s'effectue par le triptyque
"Si...alors...sinon..."
14. LES TESTS
SI...ALORS...SINON... EN ORGANIGRAMME
QUEL EST TON ÂGE ?
si age>=18
TU PEUX PASSER LE
PERMIS DE CONDUIRE
VOICI UNE
MAGNIFIQUE VOITURE
À PÉDALES
sinon
15. LES TESTS
ON PEUT ENCHAÎNER LES TESTS EN CASCADE
QUEL EST TON ÂGE ?
si age>=18
TU PEUX PASSER LE
PERMIS DE CONDUIRE
VOICI UNE
MAGNIFIQUE VOITURE
À PÉDALES
sinon
QUEL EST TON ÂGE ?
si age>=14 sinon
LE SCOOTER EST TON
AMI
16. LES TESTS
LES TESTS EN PYTHON
▸ La syntaxe est la suivante
▸ Attention au caractère "tabulation" qui va permettre de
regrouper les instructions dans un if ou dans un else
if TEST:
➡# traitement effectué 'si'...
➡.....
else:
➡# traitement alternatif
➡.....
# suite du programme
17. LES TESTS
LES TESTS EN PYTHON
▸ Exemple complet :
# Saisie au clavier
age=input()
# test d'âge
if age>18:
➡print("Tu peux passer le permis")
else:
➡print("Voiture à pédales")
# sera exécuté quoi qu'il arrive
print("Content ?")
18. LES TESTS
DIFFÉRENTS TYPES DE TEST
▸ Tous les tests de comparaison sont possibles
▸ Attention, le test d'égalité se fait avec deux signes "=="
pour le distinguer du simple "=" d'affectation
▸ "Différent de" s'écrit de la manière suivante :
if a>b: if a>=b: if a<=b: if a<b:
age=12
if age==12:
if a!=b:
19. TEXTE
TESTS DE CHAÎNES DE CARACTÈRES
▸ On peut uniquement testé l'égalité ou l'inégalité
▸ En revanche, de nombreuses fonctions permettent de
manipuler une chaîne de caractères
▸ Exemple : len() permet d'obtenir la taille en nombre de
caractères d'une chaîne
nom="Bob"
if nom=="Bob":
nom="Bob"
if nom!="Bob":
nom="Bob"
if len(nom)>3:
20. TEXTE
TESTS MULTIPLES
▸ On peut cumuler les tests avec les opérateurs AND et OR
if a==b AND a!=12:
if prenom=="Bob" AND age>=18:
if age<14 OR age>=18:
21. LES FONCTIONS
FONCTIONS
▸ But : factoriser du code pour pouvoir le réutiliser
▸ Sorte de “boîte noire” avec des entrées et sorties
▸ Principe de modularité :
▸ On découpe un gros problème en petits problèmes
▸ Une fois qu’un problème est résolu dans une fonction,
on ne s’occupe plus que des entrées et sorties
22. LES FONCTIONS
STRUCTURE D'UNE FONCTION
# Définition de la fonction
def ma_fonction(entree):
➡# traitement
➡...
➡return sortie
...
# appel de la fonction
retour=ma_fonction(12)
23. LES FONCTIONS
EXEMPLE CONCRET DE FONCTION
# Définition de la fonction
def calculePrixTTC(prixHT,tauxTVA):
➡prixTTC=prixHT*(1+(tauxTVA/100)
➡return prixTTC
...
# appel de la fonction
print("Saisissez un prix HT")
prixHT_saisi=input()
prixTTC_recu=calculePrixTTC(prixHT_saisi,20)
print("Prix TTC calculé : ",prixTTC_recu)
24. prixHT_saisi
LES FONCTIONS
UNE BOITE NOIRE
def calculePrixTTC(prixHT,tauxTVA):
➡.... # un traitement
➡return prixTTC
...
# appel de la fonction
prixTTC_recu=calculePrixTTC(prixHT_saisi,20)
FONCTION
calculePrixTTC()
prixTTC_recu
25. LES BOUCLES
BOUCLES
▸ Une boucle va permettre d'effectuer un traitement
plusieurs fois
▸ Premier type de boucle : "while", ou "tant que"
▸ Syntaxe similaire au if, mais va effectuer le test plusieurs
fois
curseur=0
while curseur<5:
➡print(curseur)
➡curseur=curseur+1
# après la boucle
print("c'est fini !")
0
1
2
3
4
C'est fini !
26. LES BOUCLES
BOUCLE FOR
▸ Dans certains cas, on peut s'éviter d'avoir à gérer le
curseur
▸ la boucle for intègre cette notion
for curseur in range(5):
➡print(curseur)
# après la boucle
print("c'est fini !")
0
1
2
3
4
C'est fini !
27. DESSINER AVEC TURTLE
LE LANGAGE TURTLE
▸ A l'origine, un langage pour enfants
▸ Permet de visualiser le résultat de vos algorithmes de
manière graphique
Effacer reset()
Avancer forward(distance)
Reculer backward(distance)
Couleur color(couleur)
Tourner à gauche left(angle)
Tourner à droite right(angle)
28. DESSINER AVEC TURTLE
EXEMPLE DE CODE TURTLE
# dessin d'un carré
from turtle import *
color('red')
for i in range(4):
forward(50)
right(90)
# dessin d'une étoile
from turtle import *
a=0
while a < 12:
a=a+1
forward(150)
left(150)
▸ Sur repl.it, lancer un projet "Python (with Turtle)"
29. DESSINER AVEC TURTLE
EXERCICE AVEC TURTLE
▸ Créer une fonction permettant de dessiner une maison
▸ Taille de la maison définie en paramètre d’entrée
▸ Emplacement de la maison tiré au hasard
# positionnement
from turtle import *
turtle.setx(10)
turtle.sety(50)
print(turtle.position())
# tirage au sort
from random import *
nb=random.randint(0,10)
print(nb)