[go: up one dir, main page]

0% ont trouvé ce document utile (0 vote)
220 vues46 pages

Chapitre 1 Python

Transféré par

5chinsamul achref
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)
220 vues46 pages

Chapitre 1 Python

Transféré par

5chinsamul achref
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/ 46

Programmation Python

Mbarka Belhaj Mohamed


mbarkaenig@gmail.com

2020-2021
Programmation procédurale

2
Caractéristiques
• La programmation procédurale est basée sur le
concept d'appel procédural.

• Une procédure contient une série d'étapes à réaliser.

• Elle peut être appelée à n'importe quelle étape de


l'exécution du programme:

– À l'intérieur d'autres procédures.


– Dans la procédure elle-même (récursivité).
Caractéristiques
• Par opposition à la programmation séquentielle, la
programmation procédurale permet de réutiliser le
même code à différents endroits dans le programme
– Réduction de la taille du code source.
– Amélioration de la maintenabilité.
• Elle permet de se passer d'instructions telles que
« goto », évitant ainsi bien souvent de se retrouver
avec un programme compliqué qui part dans toutes
les directions.
– Appelé souvent « programmation spaghetti.»
Caractéristiques
• La programmation procédurale permet les « effets de
bord »,
– La possibilité pour une procédure qui prend des
arguments de modifier des variables extérieures à la
procédure auxquelles elle a accès.
– Variables de contexte plus global que la procédure.
– La programmation impérative permet l'emploi des effets
de bord dans le fonctionnement de ses programmes
contrairement à la programmation fonctionnelle pure.
Exemples
• Algol
• BASIC
• C
• COBOL
• Fortran
• Pascal
• Perl
• PL/SQL
• VBScript
• Python
• Etc.
Le langage Python
• Langage interprété (facilite le prototypage) ;
• Typage dynamique (simplifie la programmation) ;
• Interactif ;
• Librairie standard très complète, grande quantité de librairies
• third-party ;
• Syntaxe concise, plus simple pour commencer
C++ : Python :
# include <iostream > print ("Hello world")
using namespace std;
int main()
{

cout << "Hello world" << endl; return 0;


}
D'accord, mais est-ce utilisé dans l'industrie ?
• Utilisé par :
– Google
– Youtube
– BitTorrent
– Intel, Cisco, HP, IBM
– Pixar
– NASA
– Etc.
Et on peut faire quoi avec ?
• Analyser des données (pandas, matplotlib)
• Faire du calcul scientifique (numpy, scipy)
• Faire de l'apprentissage automatique (scikit-learn)
• Construire des sites Web (flask, cherrypy)
• Maintenir des serveurs
• Programmer des jeux vidéos (pygame)
• Faire de la robotique avec un Raspberry Pi !
• Et beaucoup plus !
Manuel et logiciels du cours
• "Apprendre à programmer avec Python 3" de Gérard Swinnen.
– La version numérique de cet ouvrage est disponible en téléchargement
libre via le lien suivant:
– http://inforef.be/swi/download/apprendre_python3_5.pdf
– Version arabe:
– http://inforef.be/swi/download/apprendre_python3_arab.pdf

• Pour réaliser les laboratoires du cours, vous auriez,


essentiellement, besoin des logiciels suivant:
– Python 3 (https://www.python.org/)
– PyCharm Community Edition (conseillé, mais pas obligatoire):
– http://www.jetbrains.com/pycharm/download/
• Il faut installer (si ce n’est pas déjà fait) Java:
• www.java.com/fr
Installation
• https://www.python.org/downloads/release/python-370/

64 bits

32 bits
Premiers pas avec Python
• Vous allez commencer à utiliser le mode interactif de
Python.
– Dialoguer avec l’interpréteur directement depuis le clavier.
– Découvrir très vite un grand nombre de fonctionnalités du
langage.
• Par la suite, vous allez apprendre comment créer vos
premiers programmes (scripts) et les sauvegarder sur
disque.
Premiers pas avec Python
• Il est conseillé de commencer par utiliser l’environnement de
développement fourni par Python (IDLE):

• Les trois caractères >>> constituent le signal d’invité, ou prompt principal,


lequel vous indique que Python est prêt a exécuter une commande.
Premiers pas avec Python
• Commençons par faire des opérations simples:
Les types de données de base
• Entier : int, sans partie décimale.
• Réel : float, avec partie décimale.
• La représentation interne varie, l'interprétation
(l'utilisation) aussi.
• Opérateurs arithmétiques : +, -, *, /, //, %, **
• Fonctions mathématiques : abs(arg), int(arg),
float(arg), etc.
Les opérateurs arithmétiques
Priorité d'évaluation
• Les parenthèses d'abord : ()
• Les fonctions : abs(arg), etc.
• L'exposant : **
• Les opérateurs unaires : -, +
• Les opérateurs binaires : *, /, //, %
• Les opérateurs binaires : +, -
• Si deux opérateurs ont la même priorité, l'évaluation
est effectuée de gauche à droite.
Le type Booléen : True ou False
• Opérateurs de comparaison : <, >, <=, >=, ==, !=
• Moins prioritaires que les opérateurs arithmétiques
• False correspond à la valeur 0
• True correspond à toute valeur différente de 0,
généralement 1
• erreur_emb = age_embauche > age_retraite
Le type Booléen : True ou False
• Opérateurs de comparaison : <, >, <=, >=, ==, !=
• Moins prioritaires que les opérateurs arithmétiques
• False correspond à la valeur 0
• True correspond à toute valeur différente de 0,
généralement 1
• erreur_emb = age_embauche > age_retraite
Le type Booléen : True ou False
• Opérateurs de comparaison : <, >, <=, >=, ==, !=
• Moins prioritaires que les opérateurs arithmétiques
• False correspond à la valeur 0
• True correspond à toute valeur différente de 0,
généralement 1
• erreur_emb = age_embauche > age_retraite
Le type Booléen : True ou False
• Opérateurs de comparaison : <, >, <=, >=, ==, !=
• Moins prioritaires que les opérateurs arithmétiques
• False correspond à la valeur 0
• True correspond à toute valeur différente de 0,
généralement 1
• erreur_emb = age_embauche > age_retraite
Les opérateurs de comparaison
Les opérateurs logiques
Table de vérité : not
Table de vérité : and
Table de vérité : or
Priorité d'évaluation
• Les parenthèses : ()
• Les fonctions : abs(arg), etc.
• L'exposant : **
• Les opérateurs unaires : -, +
• Les opérateurs binaires : *, /, //, %
• Les opérateurs binaires : +, -
• Les opérateurs de comparaison : <, <=, >, >=
• Les opérateurs de comparaison : ==, !=
• L'opérateur logique : not
• L'opérateur logique : and
• L'opérateur logique : or
Opérateurs de gestion d’information
• Les variables : pour mémoriser l’information.

• L’affectation : pour déplacer de l’information.

• L’input : pour acquérir des données provenant de


l’extérieur.

• L’output : pour communiquer des données vers


l’extérieur.
Une variable en Python
• Représente une donnée.
• Porte un nom, idéalement significatif (qui désigne le
contenu d'une case mémoire à une adresse donnée) ;
• Est associée à une case de la mémoire (statique) ;
• A donc une adresse mémoire (statique) ;
• Est du type de la dernière donnée qu'on lui a affectée
(dynamique) ;
• Ce type est nécessaire pour interpréter le contenu
de la variable.
Un nom de variable en Python
• Séquence de lettres (a-z, A-Z) et de chiffres (0-9), qui doit
toujours débuter par une lettre ;
• Seul le caractère spécial _ (souligné) est permis ;
• Nous éviterons les noms débutant ou se terminant par un _
(ceux-ci ont une signification particulière en Python) ;
• Les majuscules et minuscules représentent différentes lettres ;
• Il faut éviter les 33 mots réservés qui ont une signification
prédéfinie ;
• Par convention, les variables en Python utilisent le format
suivant :
ma_variable.
Les mots réservés en Python
• Les mots suivants sont réservés par le langage, et ne
peuvent donc pas être utilisés comme nom de
variable.
Typage des variables
• Le typage des variables sous Python est dynamique.
– Par opposition au typage statique (ex. C++ ou Java) où il faut
d’abord déclarer le nom et le type des variables, et ensuite
seulement leur assigner un contenu.
• Sous Python, il suffit d’assigner une valeur à un nom de variable
pour que celle-ci soit automatiquement créée avec le type qui
correspond au mieux à la valeur fournie.
• Le typage statique est préférable dans le cas des langages compilés
– Permet d’optimiser l’opération de compilation.
• Le typage dynamique permet d’écrire plus aisément des
constructions logiques de niveau élevé.
L’opération d’affectation
• Évalue l’expression à droite du symbole =.
• Mémorise le résultat de l’évaluation de cette expression dans la
variable identifiée à gauche du symbole =.

2. mémorisation

age_retraite = 65 + 10

{
1. évaluation

• Ce que vous placez a la gauche du signe égale doit toujours être


une variable.
– L’instruction m + 1 = b est illégale.
L’opération d’affectation
• Sous Python, on peut assigner une valeur à plusieurs variables
simultanément. Exemple :

• On peut aussi effectuer des affectations parallèles à l’aide d’un


seul opérateur :
Les variables
• variable = … : mémoriser une information, age_retraite = 65
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
1002
1003
1004
Les variables
• variable = … : mémoriser une information, age_retraite = 65
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002
1003
1004
Les variables
• variable = … : mémoriser une information, age_retraite = 65
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65
1003
1004
Les variables
• variable = … : mémoriser une information, age_retraite = 65
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
1003
1004
Les variables
• variable = … : mémoriser une information, age_embauche = 60.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
1003
1004
Les variables
• variable = … : mémoriser une information, age_embauche = 60.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
age_embauche 1003
1004
Les variables
• variable = … : mémoriser une information, age_embauche = 60.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
age_embauche 1003 60.0
1004
Les variables
• variable = … : mémoriser une information, age_embauche = 60.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
age_embauche 1003 60.0 réel
1004
Les variables
• variable = … : mémoriser une information, age_retraite = 65.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65 entier
age_embauche 1003 60.0 réel
1004
Les variables
• variable = … : mémoriser une information, age_retraite = 65.0
1. Trouver ou créer la variable nommée à gauche de =.
2. Évaluer la valeur de l’expression à droite de =.
3. Mettre cette valeur dans la variable nommée à gauche de =.
4. Mémoriser le type de cette valeur comme type de la variable.

Nom Adresse Contenu Type


… 1000 … …
… 1001 … …
age_retraite 1002 65.0 réel
age_embauche 1003 60.0 réel
1004
Les entrées-sorties
• input()
– Du clavier
– Avec mémorisation temporaire
– Convertit la chaîne de caractères selon le type requis : p.ex. les 2
caractères consécutifs « 6 » et « 5 » sont convertis en valeur
numérique 65

• output() (La fonction print() permet d’afficher le contenu des


variables).
– À l’écran
– Convertit la donnée en une chaîne de caractères correspondants ; p.ex. la
valeur numérique 60.0 est convertie en 4 caractères affichés
consécutivement : « 6 » « 0 » « . » « 0 »
Exemple
Calcul de la moyenne de 2 nombres

Vous aimerez peut-être aussi