[go: up one dir, main page]

0% ont trouvé ce document utile (0 vote)
48 vues22 pages

Cours Python

Transféré par

molkaayechi525
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 PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
48 vues22 pages

Cours Python

Transféré par

molkaayechi525
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 PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 22

Programmation Python

Table des matières

Chapitre 1 : Introduction à Python


Chapitre 2 : Les types numériques en Python
Chapitre 3 : Programmation Python
Chapitre 1 : Introduction à Python
1.1. Introduction
Python est disponible sur son site officiel www.python.org :

Dans le cadre de notre cours, on va utiliser la version 3 du langage (bien que la version 2 est
encore utilisée mais elle présente certaines différences syntaxiques) qui est téléchargeable via
ce lien :

Il suffit de suivre les instructions pour installer correctement le système sur votre ordinateur et
Python est prêt à l’utilisation.

~1~
NB : Sachez qu’une version mobile est disponible pour androïd sous le nom de QPython :

Et une autre version disponible sur Apple store pour iOS intitulée Pythoni :

1.2. L’application IDLE de Python


On accède à Python soit en double cliquant sur l’icône nommée IDLE du bureau soit en en
utilisant le menu démarrer, la fenêtre suivante apparaît qui n’est autre que l’environnement de
développement intégré du langage :

~2~
Le symbole >>> est appelé l’invite de commandes ou le prompt, c’est l’endroit au niveau du
quel nous allons commencer à poser des questions à Python, on interagit avec l’environnement
en tapant des commandes :

Mais ce n’est pas l’unique manière de faire. Python permet aussi d’écrire des programmes
complets, on parle du mode script. Il suffit de tapez CTRL+N pour éditer un nouveau script :

Dans le chapitre 3, on détaillera d’avantage cette notion.

1.3. Le mode commande :


Python évalue différentes expressions introduites par l’utilisateur. Il suffit de taper une
commande suivie de la touche ENTREE pour obtenir le résultat de son évaluation.
NB : Tout ce qui suit le caractère # est considéré comme un commentaire et ne sera jamais
évalué.

~3~
1.4. Les variables en Python
On attribue une valeur à une variable en utilisant l’opérateur d’affectation =. Les variables sont
utilisées sans être déclarées et leurs types dépendent de leurs contenus. Une même variable peut
changer de type sans qu’il y ait d’erreurs :

Il est interdit d’utiliser une variable non initialisée (sans valeur de départ) dans une expression :

On peut effectuer des affectations simultanées (en même temps) de plusieurs variables :

Chaque variable possède un identifiant accessible via la commande id :

Pour tester si deux variables sont identiques (possédant le même identificateur), on utilise la
commande is :

~4~
1.5. Les fonctions intégrées
Pour interagir avec Python, on tape des commandes appelés aussi des builtins, ce sont des
commandes prêtes à l’utilisation et qui sont chargées d’une manière automatique en mémoire
de l’ordinateur (car on ne peut pas utiliser une commande qui n’est pas déjà en mémoire
centrale) :

 Valeur absolue :

 Conversion de types :

 Passage entre bases (binaires, hexa et octale) :

 Fonctions mathématiques :
 Puissance :

 Div et mod :

 Minimum et maximum :

 Arrondi :

~5~
 Nombres complexes :

 Codes ascii et caractères :

1.6. Le mode script


Taper des commandes ne suffit pas pour créer des programmes complets sous Python, c’est
pour cette raison, qu’on a recours au mode script. Pour ouvrir un nouveau script en Python, on
utilise CTRL+N ou le menu File>New File. Une page vierge apparait, où on peut éditer notre
programme. On va se contenter de créer un script sans trop comprendre l’utilité pour le
moment :

Une fois saisi, on utilise CTRL+S pour sauvegarder le script, il faut ne pas oublier de lui
attribuer un nom avec l’extension .py (par exemple script1.py). Le programme ainsi enregistré
est prêt à l’exécution, il suffit de taper F5 et on voit apparaître le résultat sur l’IDLE (et pas au
niveau du script) :

~6~
Chapitre 2: Les types numériques en Python

2.1. Introduction
Python permet de manipuler deux catégories de types :
- Les types simples : les entiers, les réels, les booléens, les nombres complexes
- Les types structurés appelés aussi conteneurs qui seront traités dans des chapitres
ultérieurs.
Dans ce chapitre, on va exposer les principales commandes applicables sur chacun des types
numériques cités précédemment ce qui nous mènera à aborder la notion de modules à savoir les
deux modules math et cmath.

2.2. Opérations communes :


L’ensemble des types numériques ont en commun un certain nombre d’opérateurs applicables
comme les opérateurs arithmétiques et aussi un certain nombre de commandes qu’on va exposer
dans la suite :

 Type d’une expression :


Pour déterminer le type d’une expression, on utilise la commande type :

 Opérateurs arithmétiques
 Addition +, soustraction -, multiplication *, division / et puissance ** :

~7~
 Quotient // et reste % d’une division euclidienne :

 Opérateurs avancés d’affectation : += ; -= ; *= ; /= ; //= ; %= ; **=

 Commandes sur les nombres complexes :


 Partie réelle

 Partie imaginaire

 Conjugué

Mais pas uniquement, on continuera à étudier d’autres commandes applicables sur le


corps C à la fin de ce chapitre.

~8~
2.4. Commandes du module math :
Dans le chapitre précédent, on a évoqué les builtins Python qui se chargent au moment du
démarrage de Python, mais ce ne sont pas les uniques commandes utilisables. Python
regroupent les commandes par thème dans des unités spéciales appelées modules. Un module
regroupe un ensemble de variables et de fonctions prêtes à l’utilisation. Il suffit d’importer le
module avec le mot clé import et d’appeler les fonctionnalités qu’il offre en utilisant une
notation préfixée de la forme nomModule.nomFonction ou nomModule.nomVariable.
Parmi les modules les plus importants, on note le module math qui regroupe un ensemble de
fonctions mathématiques définies sur le corps IR tels que la racine carré, les fonctions
trigonométriques, les fonctions log, exp…

Le contenu d’un module peut être affiché en utilisant la commande dir(nomModule) :

Et l’aide correspondant est accessible via la commande help(nomModule) :

…etc.

~9~
NB : on peut importer le contenu d’un module autrement :

 Dans ce cas, la notation préfixée n’est plus valide.


Parmi les fonctions les plus utiles du module math, on trouve :

 Racine carrée : sqrt


 Factorielle : factorial
 Fonctions trigonométriques : cos, sin, tan, asin, acos, atan
 Conversion des angles :degrees, radians
 log, exp : log,log10, log2
 fonctions d’arrondissement : floor, ceil
 troncature : trunc
NB : Le module math stocke aussi la valeur de π et de e.
Application : Essayer toutes les commandes du module math citées précédemment.

2.5. Commandes du module cmath :


D’une manière analogique, le module cmath offre toutes les fonctions mathématiques
applicables sur les nombres complexes :

Parmi les fonctions phares, on note :

 la forme polaire : polar

 l’argument : phase

 la forme algébrique à partir de la forme polaire : rect(module,argument)

2.6. Les booléens


C’est un type binaire comme on sait, les deux valeurs possibles sont True et False (attention à
la casse). Les opérateurs applicables sont and, or et not :

~ 10 ~
Chapitre 3 : Programmation Python
3.1. Introduction
Jusqu’à maintenant, on a utilisé Python en mode interpréteur, on tape une commande (une sorte
de requête) et on obtient le résultat correspondant. Cependant, Python permet comme les autres
langages de programmation d’éditer des scripts complets pouvant contenir des instructions
séquentielles, conditionnelles et des boucles.

3.2. Les structures séquentielles (simples)


 La saisie des données :
On utilise la commande input() qui quand rencontrée, le script attend jusqu’à ce que
l’utilisateur introduise une valeur qui peut importe son type sera comptée comme une
chaine de caractères. On peut documenter l’opération d’entrée en ajoutant un message
entre les () de input et qui sera affiché au moment de l’exécution de l’instruction :

La validation de la saisie est obtenue en tapant la touche ENTREE

On peut tout de même forcer la saisie d’un entier ou d’un réel directement en utilisant
respectivement les deux commandes int et float déjà rencontrées :

Parfois l’utilisateur se trompe sur la valeur introduite, l’instruction input déclenche une
erreur ou une exception, un message en rouge apparait indiquant la nature de l’erreur :

On parle d’erreurs d’exécution, on traitera les solutions à ce problème ultérieurement.

 L’affichage des résultats :


Pour afficher le contenu d’une variable, il suffit d’écrire son nom ; par contre, pour
éditer sur écran un message, on a recours à la commande print :

~ 11 ~
On peut afficher plusieurs messages sur une même ligne en choisissant le caractère de
séparation en utilisant la syntaxe suivante : print(mes1,mes2,…mesk,sep=caractere)

Pour choisir le caractère de fin de ligne, on utilise l’option end de la commande print (si
le caractère choisi est ‘’ alors il n’y aura pas de retour à la ligne) :

 L’affectation :
On affecte une valeur à une variable en utilisant l’opérateur =. La commande n’affiche
aucun résultat :

On n’a pas le droit d’utiliser des variables non initialisées dans une affectation :

Plusieurs variables peuvent être affectées en même temps, on parle d’affectation


simultanée :

3.3. Les structures conditionnelles


 schéma simple réduit :

Si condition alors
instruction
finsi

~ 12 ~
 On remarque que Python utilise la notion d’indentation (espacement) au niveau du
blocd’instruction ce qui lui permet de distinguer quelles sont les instructions à exécuter si
la condition est vraie. Python gère automatiquement l’ensemble de ces espacements,
il suffit de mettre : et de taper ENTREE pour que le curseur soit placé au bon
endroit d’écriture.

 Le FinSi n’a pas d’équivalent en Python.


 schéma simple :

Si condition alors
Instruction1
Sinon
Instruction2
Finsi

 schéma imbriqué :
Si cond1 alors
ins1
sinon si cond2 alors
ins2
…..
Sinon insk
Finsi
Finsi

Finsi

~ 13 ~
 Application : Donner les instructions Python qui permettent d’afficher la solution de
l’équation ax+b=0 avec a et b deux réels introduits au clavier. Discuter tous les cas
possibles.

3.4. Les Boucles :


 while :
On utilise l’instruction while pour répéter un traitement tantque une condition est
vérifiée ou jusqu’à ce qu’une condition soit vraie. Notons que comme les structures
conditionnelles, l’instruction while réserve une indentation pour le bloc qui se répète.

- TANTQUE ….FAIRE :
Tantque condition faire
Instruction(s)
fintantque

 Exemple 1 : le nombre de fois est connu à l’avance :


On se propose de calculer la somme S=1+2+…+N avec N une donnée :

 Exemple 2 : Durée imprévisible du traitement :


On demande de saisir une variable x strictement positive et de proposer à
l’utilisateur la possibilité d’introduire une nouvelle valeur en cas où x ne vérifie
pas la condition :

- REPETER ….JUSQU’A :
Répéter
Instruction(s)
Jusqu’à condition

 Exemple 1 : Le contrôle de saisie

~ 14 ~
 Exemple 2 : le calcul de la somme

 boucle for :
- avec l’utilisation des intervalles :
Python offre un objet spécial appelé range qui représente un intervalle qui n’est
autre qu’une suite de valeurs discrètes (et pas réelles). La syntaxe générale de la
commande range est la suivante :
range(BI,BS,pas)
Avec :
 BI = borne inférieure par défaut égale à 0
 BS = borne supérieure jamais atteinte (on s’arrête toujours en BS-1)
 pas = Le pas qui est par défaut égal à 1 pouvant être un entier positif ou négatif :

NB : _ donne le résultat de la dernière commande exécutée.

~ 15 ~
La notion d’intervalle est utilisée pour déterminer la plage des valeurs que va prendre un
compteur dans une boucle pour. L’instruction Pour est matérialisée via le mot clé for de python
dont la syntaxe a la forme suivante :

 boucles croissantes :

Supposons qu’on veut utiliser une boucle for pour effectuer différents
affichages :
 affichage des entiers compris entre 0 et 3 :

 affichage des entiers compris entre 1 et 10 :

 affichage des entiers impairs compris entre 1 et 20 :

~ 16 ~
 boucles décroissantes :
Le pas doit être une valeur négative avec une borne inférieure > à la borne
supérieure :

NB : on peut utiliser une boucle for pour itérer sur les éléments d’un conteneur (notion qui sera
vue dans les séances prochaines). La forme générale de la boucle est la suivante :

Exemple :

3.5. continue – break – else :


 continue : Permet de sauter une boucle et de passer à la boucle suivante :

~ 17 ~
 break : permet de quitter la boucle quand une condition est vraie :

 else : traitement alternatif quand une boucle se termine :

3.6. Contrôle des erreurs lors de l’exécution:


Le boucle répéter jusqu’à permet de contrôler les erreurs de logique mais pas les erreurs lors de
l’exécution. Supposons qu’au moment de l’introduction d’une valeur entière l’utilisateur se
trompe et tape un caractère, le script s’interrompt automatiquement et un message en rouge sera
affiché. Pour remédier à ce genre de situations, le langage a programmé une instruction spéciale
intitulée try qui lors d’une erreur de ce genre permet à l’utilisateur de se rattraper. Le schéma
de try est le suivant :

Exemple 1: Saisie d’une variable entière strictement positive sans gestion d’erreurs :

~ 18 ~
Exemple 2 : Saisie d’une variable entière strictement positive avec gestion d’erreurs :

Applications:
1) Ecrire un script qui affiche tous les entiers premiers compris entre deux entiers a et
b (a<b) saisis au clavier. Faites tous les contrôles nécessaires.
2) Ecrire un script qui résout dans C une équation du second degré à coefficients réels
de la forme ax²+bx+c=0. Discuter tous les cas envisageables.

~ 19 ~
~ 20 ~

Vous aimerez peut-être aussi