Ch1-Intro Au Langage Python

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 23

TECHNOLAB-ISTA FILIERE : Master Génie Logiciel et

Année Universitaire 2017-2018 Technologie Web

Groupe : MIPC 1
Enseignante : Mme. Chaïmae Lamâakchaoui

COURS

DE

PROGRAMMATION PYTHON

Enseignant : Dr. Amadou DIABAGATE


PLAN DU COURS
Chapitre 1 : Introduction au langage Python
Groupe : MIPC 1
Chapitre 2 : Structures conditionnelles
Enseignante en Python
: Mme. Chaïmae Lamâakchaoui

Chapitre 3 : Structures itératives en Python

Chapitre 4 : Tableaux et autres conteneurs en Python

Chapitre 5 : Fonctions et procédures en Python

Chapitre 6 : Utilisation des modules et packages de Python

Chapitre 7 : Programmation orientée objet

Chapitre 8 : Développement web


TECHNOLAB-ISTA FILIERE : Master Génie Logiciel et
Année Universitaire 2017-2018 Technologie Web

Groupe : MIPC 1
Enseignante : Mme. Chaïmae Lamâakchaoui

CHAPITRE 1

INTRODUCTION AU LANGAGE
PYTHON
INTRODUCTION À LA PROGRAMMATION
L'informatique s'est infiltrée dans tous les domaines de notre vie quotidienne de la bureautique
à la médecine et l'ingénierie.
La plupart des travaux que jadis l'homme effectuait lui-même sont maintenant confiés aux
ordinateurs, mais pour que ces derniers puissent exécuter ces travaux il va falloir les
programmer.
Un programme n'est autre qu'une suite d'instructions intelligibles par l'ordinateur traitant les
données acquissent du monde extérieur, les modifiant, les stockant ou les imprimant.
L'ordinateur ne comprend qu'un langage qui lui est spécifique appelé langage machine (suite
de 0 et de 1) mais puisque la programmation en langage machine est longue et compliquée des
langages évolués ont été créé pour faciliter le travail du programmeur. Le programme écrit en
langage évolué sera traduit en langage machine par un logiciel (programme) particulier appelé
compilateur ou interpréteur.

Compilateur
Programme évolué ou Programme machine
Interpréteur
Langage interprété et langage compilé

On peut distinguer deux grands types de langages : les langages interprétés (Java,
Python, etc.) et les langages compilés (C, C++, R, etc.).

 Langages interprétés
Dans ces langages, le code source (celui que vous écrivez) est interprété, par un
logiciel qu'on appelle interpréteur.
L'interprétation du code source est un processus « pas à pas » : l'interpréteur va
exécuter les lignes du code une par une, en décidant à chaque étape ce qu'il va
faire ensuite.

 Langages compilés
Dans ces langages, le code source (celui que vous écrivez) est tout d'abord
compilé, par un logiciel qu'on appelle compilateur, en un code binaire qu'un
humain ne peut pas lire mais qui est très facile à lire pour un ordinateur.
Différences fondamentales entre langage interprété et langage compilé
On pourrait discuter très longtemps des avantages et inconvénients des différents
types de langages mais les deux points qui sont les plus intéressants sont les
suivants :
 Portabilité
Dans un langage interprété, le même code source pourra marcher directement
sur tout ordinateur. Avec un langage compilé, il faudra (en général) tout
recompiler à chaque fois ce qui pose parfois des soucis.
 Rapidité
Dans un langage compilé, le programme est directement exécuté sur l'ordinateur,
donc il sera en général plus rapide que le même programme dans un langage
interprété.

NB : Python en tant que langage interprété peut être considéré comme ayant
une bonne portabilité mais lent. Toutefois, de nombreuses librairies ont été
développés permettant d’accroitre la rapidité de Python.
INTRODUCTION AU LANGAGE PYTHON

 De nombreux programmeurs informatiques s’accordent à dire que Python est un


langage qui force l’admiration dont on s’attache facilement.

 Le langage Python a été créé par Guido van Rossum, qui travaillait à cette époque
au Centrum voor Wiskunde en Informatica aux Pays-Bas.

 Depuis sa première apparition en 1991, Python est devenu l'un des langages de
programmation dynamiques les plus populaires, avec Perl, Ruby et d'autres.

 Python est devenu particulièrement populaire ces dernières années pour la construction
de sites Web en utilisant ses frameworks web tels Django.

 Parmi les langages interprétés, Python se distingue par sa communauté informatique


scientifique importante et active.

 L'adoption de Python pour le calcul scientifique dans les applications industrielles et la


recherche universitaire a considérablement augmenté depuis le début des années 2000.
E t a p e s d e l a c o nc epti on d ’ u n p r o g r a m m e (Génie Logiciel)

1. Déterminer les besoins et fixer les objectifs : que doit faire le logiciel, dans quel cadre
va-t-il servir, quels seront les utilisateurs types ? On rédige un cahier des charges
avec le commanditaire du logiciel (Remarque : commanditaire = maître d ’ o u v r a g e
; réalisateur = maître d ’ œ u v r e )
2. Conception et spécifications : quels sont les fonctionnalités du logiciel, avec quelle
interface ?
3. Programmation : modélisation et codage
4. Tests : obtient-on les résultats attendus, les calculs sont corrects, y a-t-il plantage
et dans quelles circonstances ? (tests unitaires, tests d’intégration , etc.)
5. Déploiement : installer le chez le client (vérification des configurations,
installation d e l’ex éc utable et d e s fichiers a n n e x e s , etc.)
6. Maintenance : corrective, traquer les bugs et les corriger (patches) ; évolutive (ajouter
des fonctionnalités nouvelles au logiciel : soit sur l’ergonomie, soit e n aj o u ta nt d e
nouv elles procédures)
Python est un langage de programmation interprété. Il est associé à un interpréteur
de commandes disponible pour différents OS (Windows, Linux, Mac OS X, etc.)

C’est un « vrai » langage c.-à-d. types de données, branchements conditionnels,


boucles, organisation du code en procédures et fonctions, objets et classes,
découpage en modules.

Très bien structuré, facile à appréhender, c’est un langage privilégié pour


l’enseignement.

Mode d’exécution : transmettre à l’interpréteur Python le fichier script « .py »

Python est associé à de très nombreuses librairies très performantes,


notamment des librairies de calcul scientifique (Numpy, SciPy, Pandas, etc.).
De fait, il est de plus en plus populaire, y compris auprès des data scientists.

Il est plus généraliste que R qui est vraiment tourné vers les statistiques.
Les outils standards de la programmation avec Python (1/2)

Données typées. Python propose les types usuels de la programmation : entier,


réels, booléens, chaîne de caractères.

Structures avancées de données. Gestion des collections de valeurs


(énumérations, listes) et des objets structurés (dictionnaires, classes)

Séquences d’instructions, c’est la base même de la programmation,


pouvoir écrire et exécuter une série de commandes sans avoir à intervenir
entre les instructions.

Structures algorithmiques : les branchements conditionnels et les boucles.


Les outils standards de la programmation avec Python (2/2)

Les outils de la programmation structurée : pouvoir regrouper du code dans des


procédures et des fonctions. Cela permet de mieux organiser les applications.

Organisation du code en modules. Fichiers « .py » que l’on peut


appeler dans d’autres programmes avec la commande import

Possibilité de distribution des modules : soit directement les fichiers « .py »,


soit sous forme d’extensions prêtes à l’emploi.

Python est « case sensitive », il différencie les termes écrits en minuscule et


majuscule. Des conventions de nommage existent. Mais le plus important est d’être
raccord avec l’environnement de travail dans lequel vous opérez.
Mode opératoire de python : Première mode

Lancer la console Python et introduire les


commandes de manière interactive.
 Ce n’est pas adapté pour nous (programmation =
enchaînement automatique d’instructions)
Mode opératoire de python : Deuxième mode

Ecriture du code dans un éditeur de code (notepad++)


puis l’enregistrer dans un fichier « .py »

Double cliquer le fichier « .py »


pour lancer automatiquement le
programme dans la console.
Mode opératoire 3 de Python – Utiliser IDLE (environnement de dev. de Python)
Shell : fenêtre d’exécution du programme Editeur de code

Menu : RUN / RUN MODULE


(ou raccourci clavier F5)
Permet de mieux suivre l’exécution du programme. Messages d’erreur
accessibles, pas comme pour l’exécution
console.
Python – Mode opératoire 4 – Utiliser C a n o p y , S p y d e r , e t c
Pour lancer le programme C’est le mode de fonctionnement
que nous allons privilégier !

Informations, dont l’aide


(CTRL+I sur les mots clés)

Editeur de code

Console IPython
Sorties + interaction avec l’utilisateur
Premières opérations

Affectation – Typage automatique


 a = 1.2
a est une variable, en interne elle a été automatiquement typée en flottant « float » parce
qu’il y a un point décimal. a est l’identifiant de la variable (attention à ne pas utiliser les mots
réservés comme identifiant), = est l’opérateur d’affectation

Calcul
 d = a + 3
d sera un réel contenant la valeur 4.2

Forcer le typage d’une variable (sert aussi pour le transtypage)


 b = float(1)
Même sans point décimal, b sera considéré comme float (b = 1, il aurait été int dans ce cas).
Premières opérations

Connaître le type d’un objet


 type(nom_de_variable)
Affiche le type interne d’une variable (ex. type(a)  <class ‘float’>)

Supprimer un objet de la mémoire


 del nom_de_variable
où nom_de_variable représente le nom de l’objet à supprimer.
Types élémentaires de Python
•Numérique qui peut être int (entier) ou float (double). Les opérateurs applicables sont : + , -
, * , / (division réelle), ** (puissance) , % (modulo) , // (division entière)

•bool correspond au type booléen, il prend deux valeurs possibles True et False (respecter la
casse). Les opérateurs sont not (négation), and (ET logique), or (OU logique)

ex. not(True)  False ; True and False  False ; etc.

•str désigner les chaînes de caractères. Une constante chaîne de caractère doit être
délimitée par des guillemets (ou des quotes)

ex. a  « tano » affecte la valeur « tano » à l’objet a qui devient donc une variable de type
chaîne de caractères. Une chaîne de caractère se comporte comme un vecteur : len() pour
connaître sa longueur, a[0]  « t », a[1:3]  « ano », a[2:]  « no », etc.

• Remarque : pour connaître la classe d’un objet i.e. le type associé à un objet, on
utilise la fonction type(nom_objet)
ex. type(1.2)  renvoie la valeur ‘float’
Instanciation et affectation

Affectation simple #typage automatique a


= 1.0
La seconde évite les #typage explicite
ambiguïtés. a = float(1)

#même valeur pour plusieurs


variables
Affectations multiples a = b = 2.5
Pas fondamental
#affectations parallèles a,
b = 2.5, 3.2
Opérations, expressions, enchaînements

La plus couramment utilisée a = 1


1 instruction = 1 ligne b = 5
d = a + b

Autres possibilités a = 1;b = 5 ;d = a + b;

Ces écritures ne sont a = 1;


presque plus utilisées b = 5;
d = a + b;

Une opération particulière


Une variable ne se comporte pas a =2
de la même manière de part et a=a+1
d’autre du symbole d’affectation
Transtypage
Utilisation du mot-clé désignant le type
Principe
> nouveau_type (objet)

Conversion en numérique
a = « 12 » # a est de type chaîne caractère
b = float(a) #b est de type float

N.B. Si la conversion n’est pas possible ex. float(« toto »), Python renvoie une
erreur

Conversion en logique
a = bool(« TRUE ») # a est de type bool est contient la valeur True
a = bool(1) # renvoie True également

Conversion en chaîne de caractères


a = str(15) # a est de type chaîne et contient « 15 »
Opérateurs de comparaison

Les opérateurs de comparaison servent à comparer des valeurs de même type


et renvoient un résultat de type booléen.

Sous Python, ces opérateurs sont <, <=, >, >=, != , ==

ex. a = (12 == 13) # a est de type bool, il a la valeur False

N.B. On utilisera principalement ces opérateurs dans les


branchements conditionnels.
Saisie et affichage

Saisie a = input(« Saisir votre valeur »)


a = float(a)

input() permet d’effectuer une saisie au clavier


Il est possible d’afficher un message d’invite
La fonction renvoie toujours une chaîne, il faut convertir

Affichage
• Un affichage multiple est possible
#Affichage explicite Ex. print(a,b) #affiche a et b
print(a)
• L’ af fich a g e direct du contenu d ’u n
tableau (liste) est possible également.

Vous aimerez peut-être aussi