Académique Documents
Professionnel Documents
Culture Documents
Ousmane SADIO
1. Introduction à la programmation avec Python 1
ousmane.sadio@ucad.edu.sn
2018-2019
INSTITTUT SUPERIEUR D’INFORMATIQUE
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 2
ousmane.sadio@ucad.edu.sn
❑ Popularité de Python
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 3
ousmane.sadio@ucad.edu.sn
❑ Pourquoi Python?
Python est un langage puissant, à la fois facile à apprendre et riche en possibilités. Sa
syntaxe est simple, concise et efficace. On peut résumer Python en quatre points forts :
→ Productivité : produire rapidement du code compréhensible
→ Qualité : code évolutif et maintenable, Programmation Orientée Objet (POO)
→ Portabilité : disponibilité de l’interpréteur Python sur de nombreuses plates-formes
→ Intégration : capable d’intégrer des composants écrits dans un autre langage
Quelques caractéristiques intéressantes :
▪ Code très lisible, et très bien structuré : on “code ce qu’on pense”
▪ Langage interprété, c.à.d. pas de phase de compilation explicite
▪ Pas de déclarations de types, gestion automatique de la mémoire
▪ Multiparadigme : programmation orienté objet, procédural et fonctionnel
▪ Librairie standard et les paquetages additionnels, donnent accès à une grande
variété de services
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 4
ousmane.sadio@ucad.edu.sn
❑ Domaines d’application
Les domaines d'application naturels de Python incluent entre autres:
▪ L'apprentissage de la programmation objet
▪ Les scripts d'administration système ou d'analyse de fichiers textuels
▪ Tous les développement liés à l'Internet et en particulier au Web: scripts CGI,
navigateurs Web, sites Web, moteurs de recherche…
▪ L'accès aux bases de données
▪ La réalisation d'interfaces graphiques utilisateurs
▪ Le calcul scientifique et l'imagerie
▪ Le traitement de données : datascience
▪ Les systèmes embarqués et objets connectés : ordinateurs monocartes (Raspberry
Pi, Beaglebone, …)
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 5
ousmane.sadio@ucad.edu.sn
❑ Syntaxe
Les programmes sont écrits pour être lus par des humains, il est nécessaire alors de
rendre les programmes faciles à lire et évidents. La communauté Python a ses propres
standards sur ce à quoi doit ressembler le code, codifiés dans le PEP8. Ainsi un
programme doit avoir :
Le Zen de Python
→ Une syntaxe simple à écrire et à lire Préfère :
→ L’indentation est obligatoire : il est recommandé la beauté à la laideur,
d'utiliser 4 <espace> par niveau d'indentation et pas l’explicite à l’implicite,
de caractère <tab>. le simple au complexe,
→ Pas de points-virgules ni d’accolades et le complexe au compliqué,
le déroulé à l’imbriqué,
l’aéré au compact
Prend en compte la lisibilité
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 6
ousmane.sadio@ucad.edu.sn
❑ Variables
En python tout est objet… par conséquent dans les programmes on sera amené à
manipuler de nombreux objets; et le moyen pour Python de manipuler ces objets est de
leur donner un nom par l’intermédiaire de variables. On dit que les variables référencent
les objets.
Un nom de variable en python débute par une lettre majuscule A–Z ou minuscule a-z, un
underscore _, suivie de zéro, un ou plusieurs lettres, chiffres ou soulignés.
Pour créer (ou déclarer) une variable, il suffit d’affecter son nom avec une valeur.
>>> age = 17
On pourra ainsi manipuler cet objet, le nombre 17, par l’intermédiaire de cette variable.
En python, il est très important de donner de bon noms de variables, c.à.d. des noms de
variables explicites.
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 7
ousmane.sadio@ucad.edu.sn
❑ Mots-clés réservés
Les mots-clés ci-contre sont réservés et ne peuvent donc pas être utilisés pour définir
vos propres identifiants (variables, noms de fonction, classes...).
False def if raise
None del import return
True elif in try
and else is while
as except lambda with
assert finally nonlocal yield
break for not
class from or
continue global pass
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 8
ousmane.sadio@ucad.edu.sn
❑ Types de base
Python propose 4 types simples de base. Ils sont dits simples car permettant de stocker
une seule donnée par variable. On obtient le type d’une variable avec la fonction type.
→ Entier : les nombres entiers sont le type int.
>>> type(4)
<class 'int'>
→ Flottant : les nombres à virgule flottante sont le type float.
>>> type(1.567643)
<class 'float'>
→ Booléen : c’est une variable à deux états (True ou False) de type bool.
>>> type(True)
<class 'bool'>
→ Nombre complexe : on utilise le suffixe j pour les variable de type complex.
>>> type(2+3j)
<class 'complex'>
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 10
ousmane.sadio@ucad.edu.sn
❑ Opérateurs de base
Les opérateurs mathématiques de base sont :
→ Opérateurs classiques : + - * /
→ Division entière tronquée : //
→ Puissance : **
→ Modulo (reste de la division entière) : %
→ Valeur absolue : abs
Les opérateurs de pré/post incrémentation/décrémentation ++ et -- n'existant pas sous
Python, on utilisera += 1 et -= 1.
>>> age = 17
>>> age += 1
>>> age
18
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 12
ousmane.sadio@ucad.edu.sn
❑ Opérateurs de comparaison
C’est des opérateurs qui retournent les valeurs True ou False de type booléen. Python
offre notamment les opérateurs suivants :
→ est égal à : ==
→ est différent de : !=
→ est inférieur à : <
→ est supérieure à : >
→ est inférieur ou égal à : <=
→ est supérieure ou égale à : >=
>>> 3 == 4
False
>>> 3 < 4
True
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 13
ousmane.sadio@ucad.edu.sn
❑ Opérateurs logiques
Python permet de réaliser certaines opérations logiques citées ci-après selon leur ordre
de priorité.
→ le “non” logique (la négation) : not
→ le “et” logique (la conjonction) : and
→ le “ou” logique (la disjonction) : or
Python permet de chaîner les comparaisons. On peut par exemple définir la condition :
10 < age < 20 qui est équivalente en Python à age > 10 and age < 20.
>>> age = 17
>>> age>10 and age<20
True
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 14
ousmane.sadio@ucad.edu.sn
❑ Chaines de caractères
Pour écrire une chaîne de caractères, il faut l’écrire entre deux apostrophe ' ou entre
deux guillemets ".
>>> type("michel")
<class 'str'>
→ Concaténation
La concaténation consiste à regrouper plusieurs chaînes en une seule, en mettant la
seconde à la suite de la première et ainsi de suite.
>>> mot1 = "hello"
>>> mot2 = "world"
>>> mot1 + " " + mot2 + " !"
Hello world !
Licence 2 RI & RT Programmation en Python
Ousmane SADIO
1. Introduction à la programmation avec Python 15
ousmane.sadio@ucad.edu.sn
❑ Instructions d’entrées/sorties
Les instructions d’entrées/sorties permettent à un programme Python d’interagir avec
l’utilisateur.
→ Ecrire sur la sortie standard
La fonction print() permet d'afficher la valeur d'une ou plusieurs variables. Cette fonction
print est dédiée à l'affichage uniquement.
>>> print("Hello world !")
Hello world !
→ Lire au clavier
La fonction input() affiche une invite et récupère les caractères saisis par l’utilisateur.
Cette fonction renvoie la chaîne de caractères contenant la saisie de l’utilisateur.
>>> nom = input("Entrez votre nom: ")
>>> age = int(input("Entrez votre age: "))