Lecon Python
Lecon Python
l'introduction du
langage Python
YAO Aristide
Introduction 5
I - Introduction à Python 6
II - Exercice 9
III - Exercice 10
IV - Exercice 11
V - Exercice 12
VI - Exercice 13
VII - Exercice 14
4. Video ............................................................................................................................................................ 17
5. Exercice ........................................................................................................................................................ 17
6. Exercice ........................................................................................................................................................ 18
7. Exercice ........................................................................................................................................................ 18
8. Exercice ........................................................................................................................................................ 18
6. Exercice ........................................................................................................................................................ 21
7. Exercice ........................................................................................................................................................ 21
8. Exercice ........................................................................................................................................................ 22
9. Exercice ........................................................................................................................................................ 22
5. Exercice ........................................................................................................................................................ 25
6. Exercice ........................................................................................................................................................ 26
7. Exercice ........................................................................................................................................................ 26
Conclusion 27
4
YAO Aristide
Introduction
L'activité essentielle d'un programmeur/administrateur consiste à proposer des solutions afin de résoudre des
problèmes liés à une gestion numérique de différent type de données ou de matériel. Ce cours introduit d'abord les
notions élémentaires que doit connaître un programmeur sans être exhaustif, ensuite l'architecture de
fonctionnement de python et enfin la manipulation de l'interpréteur interactif.
5
YAO Aristide
Introduction à Python
Introduction à Python
I
Objectifs
Définir certaines caractéristiques du langage Python
Comprendre les concepts de gestion de flux d'entrée et de sortie
Analyser, tester des instructions python
Prédire le résultat d'exécution de code python
Python est un langage de programmation haut niveau qui est utilisé dans les domaines de la programmation
web, de l'intelligence artificielle et du calcul scientifique. Il est parfaitement adapté à l'apprentissage de la
programmation par un débutant car il présente les caractéristiques suivantes :
- Son téléchargement et son installation sont gratuits (i.e. il est libre de droit).
- Il est facile à comprendre, à écrire et à lire.
- Il utilise un mode de traduction interprété. Cependant il est adapté pour les grands projets
- Un programme Python est en moyenne au moins trois fois plus court qu'un programme écrit en langage C
ou en Java.
- Il est doté d'une communauté active, ce qui permet au programmeur débutant de communiquer avec une
palette de programmeurs expérimentés afin de l'aider à résoudre des problèmes qu'il pourrait rencontrer
lors de son exercice.
Cette liste de caractéristique n'est pas exhaustive. Python possède encore de nombreuses caractéristiques qui
font de lui un langage très populaire et très utilisé dans le monde de la programmation.
Lors de l'exécution d'un programme informatique interactif, les entrées sont les informations qui sont
saisies au clavier par l'utilisateur du programme et les sorties sont les informations affichées à l'écran par le
programme.
6
Fonction de manipulation de sortie
Un programme informatique reçoit généralement des données en entrée et produit des données en sortie. Les
données en entrée sont fournies, soit par le programmeur (programme statique), soit par l'utilisateur du
programme (programme interactif) ; les données en sortie sont calculées par le programme en fonction de
l'algorithme appliqué sur les données d'entrées.
En python, la fonction print est utilisée pour produire une sortie. Elle affiche une représentation textuelle de
quelque chose à l'écran de la machine. Elle peut afficher le résultat d'une opération arithmétique ou encore une
description textuelle. Pour afficher une description textuelle, le contenu du texte doit être encadré soit par le
symbole apostrophe ('contenu') ou par le symbole double côte ("contenu").
>>>print("1+1")
1+1
Remarque
lorsque le résultat de l'affichage est imprimé à l'écran, les doubles côtes ou les apostrophes n'apparaissent pas.
Pour obtenir de l'utilisateur une donnée d'entrée, Python nous permet d'utiliser la fonction input. Elle demande
à l'utilisateur de saisir une valeur au clavier à travers une description textuelle qui sera affichée à l'écran et qui
est un paramètre de la fonction input. Elle retourne comme données de sortie la valeur saisie au clavier par
l'utilisateur
7
Fonction de manipulation d'entrée
02229831
8
Exercice
Exercice
II
[solution n°1 p.28]
[*]
un langage machine
9
Exercice
Exercice
III
[solution n°2 p.28]
[* ]
compilé
interprété
compilé et interprété
binaire
10
Exercice
Exercice
IV
[solution n°3 p.28]
[*]
11
Exercice
Exercice
V
[solution n°4 p.28]
[* ]
12
Exercice
Exercice
VI
[solution n°5 p.29]
[*]
>>>print(" ")
13
Exercice
Exercice
VII
[solution n°6 p.29]
[* ]
>>>print('5*3')
14
Le monde des variables
- Les entiers désignent tous les éléments qui appartiennent à l'ensemble des nombres entiers naturels N. Le
type entier se nomme int en python.
- Les réels ou flottants désignent tous les nombres à virgule dans l'ensemble des nombres réels R
(exemple : 13.25). On utilise "." au lieu de "," pour écrire un nombre à virgule sous python et le type
flottant se nomme float en python.
- Les chaînes de caractère: Ce type de variable permet de stocker une série de lettre, un mot ou une
phrase. La valeur qu'une variable de type chaîne de caractère reçoit s'écrit entre guillemets ("ma
chaîne") ou entre apostrophes ('ma chaîne'). Le type chaîne de caractère se nomme str (string) en
python.
- Les booléens sont des variables d'ordre 2 ; c'est à dire qui ne peuvent prendre que 2 valeurs True ou False
. Le type booléen se nomme bool en python
Attention : Booléen
Il faut bien noter les majuscules pour les 2 valeurs que peuvent prendre les booléens.
15
Nom de variable
Typage statique
En langage C ou dans tout autre langage utilisant un mode de traduction compilé, la déclaration d'une
variable se fait en précisant le type de cette variable. On dit que le type de la variable est défini avant
l'exécution du programme (typage statique). Dans ce cas la valeur qui est affectée à la variable doit être du
même type que la variable. Lors d'une déclaration de variable, l'initialisation n'est pas obligatoire.
Exemple : langage C
int age=20 ou float moyenne=12.50 ou char genre='M' ou float variance
Typage dynamique
Avec python, on déclare une variable sans préciser son type. On parle de typage dynamique, c'est-à-dire que le
type de la variable déclarée est déterminé lors de l'exécution du programme. Dans ce cas l'initialisation est
obligatoire ; ainsi la variable reçoit le même type que la valeur qui lui a été affectée. Pour découvrir le type
d'une variable sous Python, la fonction type(nom_de_la_variable) est utilisée.
>>>type(age)
<type 'int'> --> 25 est un entier, alors la variable age est de type int
>>>nom='Francois'
>>>type(nom)
<type 'str'> --> Francois est une chaîne de caractère, alors la variable nom est
de type str
3. Nom de variable
Python présente certaines règles concernant le nom qu'un programmeur peut donner à une variable
Règle 1
Pour déclarer une variable qui contient plusieurs mots, il faut soit remplacer chaque espace par un underscore
("_") ou tiret de 8, soit supprimer l'espace et mettre la première lettre du mot suivant en majuscule
Exemple : python
mon_age ou mon_salaire_mensuel ou monAge ou monSalaireMensuel
Règle 2
Il est formellement interdit de débuter le nom d'une variable par un chiffre ou d'utiliser dans la composition du
nom un symbole autre que underscore, ou encore les caractères accentués (à, é, è, ç, etc.).
16
Video
Exemple : python
A ne pas faire: 2x_mon_salaire ou mon_école ou mon-salaire-x2
Règle 3
Python est sensible à la casse; c'est-à-dire qu'une variable déclarée avec un caractère majuscule est différente
d'une variable déclarée avec une caractère minuscule
Exemple : Python
age, Age et AGE sont trois variables différentes
4. Video
Cette vidéo résume toute l'activité d'apprentissage le monde des variables. Cliquez sur le lien pour y avoir accès
[Link]
ma-date-de-naissance
MadateDe-naissance
ma_date_de_naissance
MA MOYENNE
maMoyenne
ma Moyenne
17
Exercice
Ligne 2 : Écrire l'instruction pour afficher le contenu de la variable filière avec la fonction print sous python 3
>>>
>>>
ISN
>>>age = 20.5
>>>
Parmi ces types de variable, lesquels sont parmi les types de bases de python
float
integer
char
bool
reel
str
18
Opérations arithmétique sur les variables en python
Opérations arithmétique
sur les variables en IX
python
Objectifs
Réaliser des opérations arithmétiques sur les variables
Analyser et prédire le résultat d'opérations arithmétiques sur les variables
1. Opérateurs de calcul
Symbole Opérateur Description
+ Addition
- Soustraction
* Multiplication
** Exposant
Remarque : Important
Lorsque deux opérateurs possèdent le même ordre de priorité, l'ordre de calcul se fait de gauche à droite
19
Priorité des opérateurs (2)
- 2*(3-1) = 2*(2) = 4
- (2+1)**(4-1) = (3)**(3) = 27
Exposant
- 2**2+1 = 4+1 = 5
- 3*1**100 = 3*1 = 3
Multiplication et Division
- 2*3-1=6 -1=5
- 2/3-1=0.66666 -1=-0.3333...
Égalité de priorité
- 29*100//60, le calcul se fait de gauche à droite car les deux opérateurs ont le même ordre de priorité
. On effectue d'abord la multiplication 29*100=2900 et ensuite se fait la division entière 2900//60=48.
Finalement on a 29*100//60=48.
- Faisons maintenant le calcul de 29*(100//60). On effectue d'abord la division entière 100//60=1 et ensuite
la multiplication 29*1=29. Finalement on a 29*(100//60)=29.
On obtient deux résultats différents. Le calcul s'est déroulé de droite à gauche car la parenthèse est
prioritaire sur la multiplication.
Exemple : Python 2
>>>nombre1 = 22
>>nombre2 = 3.5
>>nombre1 + 4
26
>>>nombre1 * nombre2
>>>nombre1 / 2.0
11.0
20
Exercice
Il est possible en Python d'utiliser l'opérateur + pour additionner plusieurs chaînes de caractère; on parle alors
de concaténation (dérivé du verbe concaténer). Il s'agit de mettre bout à bout deux ou plusieurs chaînes de
caractères de manière à en former une autre. La concaténation n'est possible qu'entre des chaînes de
caractère.
>>>filiere = "DAS"
Je suis en DAS
Multiplication
L'opérateur * est utilisé pour répéter n fois (où n est un entier) une chaîne de caractère. Il est impossible de
multiplier deux chaînes de caractères.
Exemple : Python
>>>"w" * 3
www
>>>condiment = 'tomate'
>>>condiment * 2
tomatetomate
>>>fruit="mangue"
>>>print fruit * 3
fruitfruitfruit
"fruitfruitfruit"
manguemanguemangue
"manguemanguemangue"
21
Exercice
>>>nombre1 = 5
>>>nombre2 =
12
>>>x = 2
>>>y = 3
>>>y = 5
>>>x = 4
>>>print(x*y)
>>>nom = "YAO"
>>>print(identite)
22
Formatage de chaînes de caractère
Formatage de chaînes de
caractère X
Objectifs
A la fin de cette activité, l'apprenant sera capable de :
La manipulation de chaînes de caractère dans tout langage de programmation est fondamentale pour la mise en
place de programme interactif. Python permet au programmeur d'utiliser différentes méthodes pour réaliser la
formatage
1 nom = 'YAO'
2 prenom = "Albert"
3 age = 22
4 print("Votre nom est", nom, ", votre prenom est", prenom, " et vous avez", age,
"ans")
Le résultat de ce code est:
Votre nom est YAO, votre prenom est Albert et vous avez 22 ans
Remarque
Cette méthode classique de concaténation à l'intérieur de la fonction print devient très complexe à écrire s'il
faut gérer l'affichage de plusieurs variables au sein d'une même chaîne. Ceci rend le script difficile à analyser
surtout pour un programmeur qui n'est pas à la base de l'écriture du script.
23
Autre syntaxe de la méthode format
2. La méthode format()
La méthode format() peut gérer de manière plus simple l'affichage de plusieurs variables suivant la syntaxe
suivante :
Exemple
1 nom = "YAO"
2 prenom = "Albert"
3 age = 23
4 print("Votre nom est {}, votre prenom est {} et vous avez {}".format(nom, prenom,
age))
Le résultat de ce code est :
Votre nom est YAO, votre prenom est Albert et vous avez 22 ans
Explication
Les accolades "{}" seront remplacées par ordre par les noms de variable qui sont inscrit comme paramètre dans
la méthode format.
Par exemple la 1ere accolade correspond au paramètre nom, la 2e correspond au paramètre prenom et la 3e au
paramètre age.
Remarque
1. Le formatage de la chaîne aurait pu avoir la syntaxe suivante :
print("Votre nom est {0}, votre prenom est {1} et vous avez {2}".
format(nom, prenom, age))
Où {0} représente le 1er paramètre, {1} le 2e paramètre et {2} le 3e paramètre
2. Il est important de rappeler que cette fonctionnalité est bien plus puissante qu'un simple affichage, il
est possible de formater une chaîne et de la stocker suivant la syntaxe suivante :
nouvelle_chaine = "Je m'appelle {0} {1} et j'ai {2} ans.".format
(prenom, nom, age)
24
les f-string
Treichville, Abidjan CI
Remarque
Pour les chaînes qui contiennent des sauts de lignes, on triple les guillemets """. On peut aussi faire un saut de
ligne en utilisant "\n".
saut de ligne
4. les f-string
Disponible depuis la version 3.6 de python
Les f-string permettent d'insérer des variables ou expressions à l'intérieur d'une chaîne de caractères. Pour cela,
il suffit de rajouter la lettre 'f' devant lachaîne de caractères et mettre la ou les variables entre accolades"{ }":
Remarque
Dans le code précédent l'expression entre accolade {5 + 10} est évalué comme une opération arithmétique. Le
résultat affiché est :
1 print("{0}{1}{0}".format("abra", "cad"))
25
Exercice
1 print("""1ere ligne
2 2e ligne""")
26
Conclusion
Ce cours d'introduction à la programmation en général et à l'usage du langage python en particulier a permis de
comprendre des notions fondamentales du domaine de développement d'application, de connaître l'architecture de
fonctionnement de Python et de faire nos premiers pas avec l'interpréteur interactif de Python. La prochaine leçon
sera consacrée à la manipulation des variables en Python.
27
YAO Aristide
Solutions des exercices
un langage machine
Les instructions d'un langage bas niveau sont des instructions basiques et leur traduction en langage machine se fait
simplement car leur instructions sont proches des instructions compréhensible par l'ordinateur
compilé
interprété
compilé et interprété
binaire
le résultat de l'affichage à l'écran de la fonction print apparaît toujours sans l'apostrophe ou sans les doubles côtes.
28
YAO Aristide
Solutions des exercices
la fonction print prend ici en paramètre une description qui est affichée à l'écran. cette description doit soit être
entre double côte soit entre apostrophe. du fait que input() soit mis entre apostrophe, elle ne représente plus la
fonction input mais une simple description qui sera affiché à l'écran comme une indication quelconque. Et cette
description une fois affiché à l'écran n’apparaît pas avec l'apostrophe.
Nous savons que print affiche entièrement toute description textuelle contenue à l'intérieur des symboles double
côte ou des symboles apostrophe. ici l'apostrophe étant à l'intérieur des doubles côtes, la fonction print considère
l'apostrophe comme une description.
>>>print('5*3')
5*3
5*3 étant entre apostrophes, python la considère comme une description plutôt que comme une opération
arithmétique. l'instruction >>>print(5*3) aurait produit 15.
ma-date-de-naissance
MadateDe-naissance
ma_date_de_naissance
29
YAO Aristide
Solutions des exercices
MA MOYENNE
maMoyenne
ma Moyenne
Ligne 2 : Écrire l'instruction pour afficher le contenu de la variable filière avec la fonction print sous python 3
>>>filiere='ISN'
>>>print(filiere)
ISN
>>>age = 20.5
>>>type(age)
<type 'float'>
Parmi ces types de variable, lesquels sont parmi les types de bases de python
float
integer
char
bool
reel
str
>>>fruit="mangue"
>>>print fruit * 3
30
YAO Aristide
Solutions des exercices
fruitfruitfruit
"fruitfruitfruit"
manguemanguemangue
"manguemanguemangue"
>>>nombre1 = 5
>>>nombre2 = 7
12
>>>x = 2
>>>y = 3
>>>y = 5
>>>x = 4
>>>print(x*y)
20
>>>nom = "YAO"
>>>print(identite)
1 print("{0}{1}{0}".format("abra", "cad"))
abracadabra
31
YAO Aristide
Solutions des exercices
7,5,9
1 print("""1ere ligne
2 2e ligne""")
32
YAO Aristide