Vous êtes sur la page 1sur 30

Développement Web avec Python

Programmation en python

Année 2020-2021
Programme de la séance 1
2
• Python??Pourquoi??
26 • Environnement de développement
• Types de données, opérations
– nombres
Développement Web

– valeurs logiques
– textes
Python

• Variables, instruction d’affectation


• Fonctions d’entrées / sorties
• Séquences d’instructions, blocs composés
• Instruction if
Hassna Bensag

Année 2020-2021
INTRODUCTION

Année 2020-2021
Qu'est-ce que Python ?
4 • Python est un langage de programmation de
26 haut niveau qui est :
• Interprété : Python est traité à l'exécution par
l'interpréteur ligne par ligne.
Développement Web

• Interactif : Vous pouvez utiliser une invite


Python

Python et interagir directement avec


l'interpréteur pour écrire vos programmes.
• Orienté objet : Python supporte le paradigme
orientée objet.
Hassna Bensag

Année 2020-2021
Histoire de Python
5 • Python a été créé en 1989 par Guido Van Rossum
26
• La première version publique de ce langage a été
publiée en 1991 au CWI aux Pays-Bas.
• Python est dérivé du langage de programmation
Développement Web

ABC, qui a été développé au CWI


Python

• G. Van Rossum a choisit le nom « Python », vu


qu'il était un grand fan de la série Monty Python
• Puis Python 3.0 est sorti le 3 décembre 2008.
Hassna Bensag

Année 2020-2021
Pourquoi Python
6 • Python est récompensé comme le meilleur langage
26 de programmation de l'année 2020 (Source TIOBE
Programming Community)
Développement Web
Python
Hassna Bensag

Année 2020-2021
Pourquoi Python - tech skills trend
7 • Selon le site indeed.com, la montée en croissance de
26 Python est beaucoup plus élevé que celle des autres
langues.
Développement Web
Python
Hassna Bensag

Année 2020-2021
les caractéristiques de python
8 • Facile à apprendre
26
• Multiplateforme
• Gratuit et Open Source
Développement Web

• Orienté Objet
Python

• Typiquement dynamique: nous n'avons pas


besoin de spécifier le type de données lors de
la déclaration.
• Large choix de bibliothèque
Hassna Bensag

Année 2020-2021
L’ENVIRONNEMENT DE TRAVAIL

ATELIER1
Année 2020-2021
SYNTAXE DE BASE

Année 2020-2021
Script Python
11

26
• Les fichiers Python ont l'extension .py
• Contiennent une liste d’instructions
Développement Web

• Le point-virgule ( ; ) est facultatif à la fin de


Python

l’instruction.
• Lecture des entrées clavier:
• Génère la sortie du script:
Hassna Bensag

Année 2020-2021
Développement Web

26
12
Hassna Bensag
Python

Année 2020-2021
Commentaires
Indentation
13 • L'indentation est utilisée en Python pour
26 délimiter les blocs. Le nombre d'espaces est
variable, mais tous les instructions d'un même
bloc doivent être indentés de la même façon.
Développement Web
Python
Hassna Bensag

Année 2020-2021
Variables
14
• Python est doté d’un typage dynamique
26
• La déclaration se fait automatiquement lorsque vous
attribuez une valeur à une variable.
Développement Web

• Les variables peuvent changer de type, simplement en


Python

leur attribuant une nouvelle valeur d'un type différent.

• Python vous permet d'assigner une seule valeur à


plusieurs variables simultanément.
Hassna Bensag

Année 2020-2021
Variables
15

26 • Vous pouvez également assigner plusieurs


objets à plusieurs variables.
Développement Web

• Pour échanger des variables Python


Python

• Pour supprimer une variable python


Hassna Bensag

Année 2020-2021
Principaux type de données
16 • Entier (int)
26
• Flottant (float)
• Texte (chaîne de caractères) (str)
Développement Web

• Booléen (bool):True, False


Python

• Rien, indéfini (NoneType)


Hassna Bensag

Année 2020-2021
Opérateurs arithmétiques
17 • Addition +
26
• Soustraction -
• Multiplication *
Développement Web

• Division flottante /
Python

• Division entière //
• Reste de la division entière (modulo) %
• Exponentielle **
Hassna Bensag

Année 2020-2021
Opérateurs logiques
18 • et (and): x < 18 and x < 24
26
• ou (or): x < 18 or x < 24
• non (not): not(x < 18 or x < 24)
Développement Web

• Valeurs de retour
Python

– Vrai : True
– Faux : False
Hassna Bensag

Année 2020-2021
Opérateurs de comparaison
19

26
Opérateur Exemple
== x == y
x != y
Développement Web

!=
> x > y
Python

< x < y
>= x >= y
<= x <= y
Hassna Bensag

Année 2020-2021
Chaînes de caractères
20 • Première syntaxe sans retour à la ligne
26
• Deuxième syntaxe avec retour à la ligne

• Les indices de chaîne débutent à 0.


Développement Web

• Les indices commencent à -1 à la fin


Python

• Concaténation

– Remarque: on ne peut pas concaténer un String et un

Nombre
Hassna Bensag

• Répétition

Année 2020-2021
Chaine de caractères
• Méthodes:
21
Méthode Description
26
lower() et upper(): str.lower() , str.upper() Renvoie respectivement une chaine en miniscule et en
majuscule
strip(): str.strip() Supprime les espaces blancs au début et à la fin de la chaîne. Et
retourne la chaine.
Développement Web

replace():str.replace(oldvalue,newvalue,[count]) Remplace « count » occurences de « oldvalue » par


« newvalue ». L’argument count est optionnel, par default c’est
Python

toutes les occurrences.


Split(): str.split([seperator]) Divise la chaîne en fonction du délimiteur (espace par default)
et renvoie une liste de sous-chaîne.
isalnum(), isalpha(), isspace() retournent True si la chaîne ne contient respectivement
que des caractères alphanumériques, alphabétiques,
numériques ou des espaces
find(value): str.find(value) La méthode find() trouve la première occurrence de la valeur
spécifiée. La méthode find() renvoie -1 si la valeur n'est pas
Hassna Bensag

trouvée.

• Fonctions: len(str)retourne la longueur de la chaine str

Année 2020-2021
Instruction if
22

26 if condition1 :
Bloc exécuté si
condition1 est
vrai.
elif condition2 :
Développement Web

Bloc exécuté si condition1 est


faux et condition2 est vrai.
Python

else :
Bloc exécuté si aucune
condition n'est vraie.

• Les condition sont des expressions logiques


booléennes évaluées à True ou False.
Hassna Bensag

Année 2020-2021
Exercice1
• Créez un nouveau script Python dans votre répertoire pyworkproject que vous
23 nommerez TP1exo1.py.
26 • L'IMC ou Indice de Masse Corporelle est défini par l'OMS (Organisation Mondiale
de la Santé), pour les adultes de 16 à 70 ans, comme étant le rapport du poids sur
le carré de la taille, le poids étant exprimé en kilo-grammes, et la taille en mètres.
• On définit ensuite des plages correspondant à une indication de classification :
Développement Web

IMC Interprétation
Python

+40 obésité morbide ou massive

35 à 40 obésité sévère

30 à 35 Obésité modérée

25 à 30 surpoids

18.5 à 25 corpulence normale


Hassna Bensag

16.5 à 18.5 maigreur

- de 16.5 famine
Année 2020-2021
Exercice2
24
1. Demander à l'utilisateur de saisir le poids en kilo-grammes et la
26 taille en centimètres. Stockez ces deux nombres dans les variables
poids et taille.
2. Calculez la variable imc à partir de la formule donnée (attention
aux unités) et affichez-le.
Développement Web

3. Suivant la valeur de cette variable, affichez la chaîne


correspondant à l'interprétation qui est faite (choisissez dans
Python

quelle tranche vous mettez les valeurs seuils).


• Par exemple pour une personne de 85 Kg mesurant 1,75 m, l'exécution
produira (en gras la saisie de l'utilisateur) :
Votre poids en Kg:85
Votre taille en cm:175
imc: 27.755102040816325
surpoids
Hassna Bensag

Année 2020-2021
Programme de la séance 2
25 • Les listes
26
• Les tuples
• Les dictionnaires
Développement Web

• Les Set
Python

• Les boucles
Hassna Bensag

Année 2020-2021
List
• Une liste est une collection ordonnée et
26
modifiable d’éléments éventuellement
26
hétérogènes (pas nécessairement du même
type).
• Les éléments de la liste sont indexés, le
Développement Web

premier élément a un index [0].


Python

• Il est possible de spécifier une gamme


d'indices en précisant où commencer et où
terminer la gamme. La valeur de retour sera
une nouvelle liste avec les éléments spécifiés.
• Pour déterminer si un élément est présent
dans une liste. Il faut utiliser (in)
Hassna Bensag

Année 2020-2021
List
• Il est possible de modifier la valeur d'un
27
élément spécifique ou les éléments dans une
26
plage.

• Lorsque vous insérez moins d'éléments que


Développement Web

vous remplacez. les nouveaux éléments seront


insérés à l'endroit que vous avez indiqué, et les
Python

autres éléments seront supprimés


Hassna Bensag

Année 2020-2021
List
• Méthodes: list= ['Java','Python','C#']
28
Méthode Description
26
list.insert(2,"sql") Ajoute un élément à l’index spécifié

list.append("J2ee") Ajoute un élement à la fin de la liste


Développement Web

list.extend(list2) Ajoute des éléments d'une liste (list2) à la liste actuelle (list)
Python

list.remove("laravel") Supprime l’élément spécifié de la liste actuelle


list.pop(1) Supprime l'élément à l'index spécifié.

list.clear() Vide la liste.

list.sort() Trie la liste de manière alphanumérique, en ordre croissant, par


défaut. En ordre décroissant list.sort(reverse=True)
List.reverse() Inverse l'ordre actuel des éléments.
Hassna Bensag

list2=list.copy() Créée une copie de la liste (list) dans la liste (list2)

• Fonctions: len(list)retourne la longueur de la liste (list)


Année 2020-2021
Boucle: for et while
29 • For
26
Développement Web

• While
Python
Hassna Bensag

Année 2020-2021
Exercice2
30 • Créez un fichier TP1exo2.py.
26
• À partir des deux listes suivantes :
– vehicules = ["train", "bus", "voiture", "vélo"]
Développement Web

– couleurs = ["rouge", "vert", "bleu", "jaune"]


Python

1. Créez de façon automatique une liste lst contenant des


chaînes avec toutes les combinaisons de véhicule et couleur:
["train rouge", "train vert",… "vélo jaune"]
2. Modifiez le script pour que la combinaison "voiture vert" ne
soit pas ajoutée à la liste lst lors de sa construction
Hassna Bensag

Année 2020-2021

Vous aimerez peut-être aussi