La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

LE LANGAGE DE PROGRAMMATION Formation RABAH Mohamed Ali.

Présentations similaires


Présentation au sujet: "LE LANGAGE DE PROGRAMMATION Formation RABAH Mohamed Ali."— Transcription de la présentation:

1 LE LANGAGE DE PROGRAMMATION Formation 04-01-2019 RABAH Mohamed Ali

2 Formation Présentation et caractéristiques Installation et environnement du travail Les structures de données & Les structures simples Les structures de de contrôle La modularité (Les fonctions) Plan

3 Formation C’est quoi Python ?  Python est un langage de programmation créé en 1989 par Guido van Rossum.  La première version publique de ce langage a été publiée en 1991.  Python est un langage de programmation de haut niveau.  Python est gratuit, dont le code source est accessible.  Python est un excellent langage pour les débutants.  La dernière version est 3.7.1 publiée en Octobre 2018. Site officiel: https://www.python.org/https://www.python.org/ Présentation et caractéristiques

4 Formation Pourquoi Python ? Est interprété. Est orienté-objet. Est portable, et multiplateforme (Windows, Mac OS, Linux, Android, iOS). La syntaxe très simple conduit a des programmes très lisibles et très court (de 3 a 5 fois plus court qu’un programme C ou C++). Est dynamiquement typé=>pas besoin de déclaré les objets à l’avance. Intègre, un système d’exceptions, pour simplifier la gestion des erreurs. Présentation et caractéristiques

5 Formation Que peut-on faire avec Python ?  du calcul scientifique  du traitement du son, de la synthèse vocale  du traitement d'image  Des applications avec interface graphique GUI  des jeux vidéo en 2D  des applications multi-touch (pour tablette et smartphone à écran tactile)  des applications Web Présentation et caractéristiques

6 Formation Télécharger et installer la dernière version 3.7.1 https://www.python.org/downloads/ Installation et environnement du travail

7 Formation Autres éditeurs Python Mu Pycharm Wing Installation et environnement du travail

8 Formation  Afficher les bibliothèques et les packages installés  Afficher l’aide de la bibliothèque "sys"  Importer la bibliothèque "sys"  Afficher la version du langage Python installée Installation et environnement du travail Activité 1 : Découverte de l’environnement en mode Shell help ("modules") help (sys)  erreur import sys ou bien from sys import * import sys ou bien from sys import * sys.version

9 Installation et environnement du travail  Afficher le jour, le mois et l’année de la date système from datetime import * xx=datetime.now() xx.day xx.month xx.year ou bien print(xx.day, xx.month, xx.year, sep=’-’) from datetime import * xx=datetime.now() xx.day xx.month xx.year ou bien print(xx.day, xx.month, xx.year, sep=’-’)

10 Formation Activité 2 : Installation de nouvelles bibliothèques  NumPy est une bibliothèque numérique destinée à manipuler des tableaux multidimensionnels ainsi que des fonctions mathématiques opérant sur ces tableaux.  Installation de la bibliothèque "numpy" 1. Accéder à l’invite de commandes du windows : cmd 2. Accéder au dossier d’installation du python 3. Taper la ligne de commande : python –m pip install numpy Installation et environnement du travail

11 Formation Activité 3 : Notion de constante  Afficher la constante Pi.  Affecter à Pi la valeur 5.  Afficher de nouveau la valeur de Pi.  Que constater vous? Les structures de données import math print("pi = ",math.pi) math.pi=5 print("pi = ",math.pi) import math print("pi = ",math.pi) math.pi=5 print("pi = ",math.pi)

12 Formation Les variables  Une variable est un identificateur associé à une valeur.  La déclaration d’une variable et son initialisation se font en même temps et sans indiquer le type que se déduit automatiquement d’après la valeur associée à la variable.  Python est sensible à la casse. Les structures de données nom_variable = valeur

13 Formation Activité 3 : En mode shell:  Affecter l’entier 5 à une variable a. 1) Afficher le type de la variable a. 2) Afficher les fonctions disponibles pour manipuler la variable a.  Affecter 12.45 à la variable a. Appliquer les traitements 1 & 2.  Affecter ‘’bonjour’’ à la variable a. Appliquer les traitements 1 & 2. Les structures de données Le Typage dynamique A=5 Type(a) Dir(a) A=5 Type(a) Dir(a)

14 Formation En Python on distingue deux sorte de types:  Les types simples  Le type entier (int)  Le type réel (float)  Le type booléen (bool)  Le type complexe (complex)  Les types composés  Le type chaine de caractères (str)  Le type liste (list)  Le type tuple (tuple)  Le type dictionnaire (dict) ...... Les structures de données

15 Formation Activité 4 : Opérateur appliqués sur les entiers Soit a=16 et b=5 deux variables de type int, faire les calculs suivants : Les structures de données OpérationSyntaxe en PythonRésultatAdditiona+b21 Soustractiona-b11 Multiplicationa*b80 Divisiona/b3.2 Puissancea**b1048576 Division entière a//b3 Reste de la division a%b1 ‘int’‘int’

16 Formation Activité 5 : Opérateur appliqués sur les Réels Soit a=10.5 et b=3.25 deux variables de type float, faire les calculs suivants : Les structures de données OpérationSyntaxe en PythonRésultatAdditiona+b13.75 Soustractiona-b7.25 Multiplicationa*b34.125 Divisiona/b3.23076923076 Puissancea**b2083.84408701 Division entière a//b3.0 Reste de la division a%b0.75 ‘float’‘float’

17 Formation Activité 6 : Le type Chaine de caractères Soit ch= ‘0123456789’ une variable de type ‘str’.  Exécuter les scripts : ch [0], ch [-1]  Exécuter ch [0] = ‘b’  Exécuter les scripts : ch[ :], ch[2 :], ch[ : 3], ch[1 : 4], ch[0: 8 : 2], ch[ 1 : -1], ch[ : : -1] Les structures de données Python a intégré l’indexation négative Le type "str" en python est immutable Découpage en sous chaines ch[i : j] donne la tranche de ch de i à j-1 ch[i:j:k] donne la tranche de ch de i à j-1 avec un pas de k Découpage en sous chaines ch[i : j] donne la tranche de ch de i à j-1 ch[i:j:k] donne la tranche de ch de i à j-1 avec un pas de k ‘str’‘str’

18 Formation Activité 7 : Fonctions et méthodes appliquées sur les Chaînes Les structures de données Fonction/MéthodeDescription len() Retourne la longueur de la chaine + Concaténer des chaines * Multiplier une chaine isupper() Tester si la chaine est en majuscule upper() Mettre la chaine en majuscule find (s) Donne la position d’une chaine dans une autre count(s) Compte le nombre d’occurrence d’une chaine replace(x, y, n) Remplace les n premières occurrences de x par y ‘str’‘str’

19 Formation Affichage de données : Cette opération permet d’afficher ou d’écrire le contenu d’une variable ou la valeur d’une expression. Syntaxe: Les structures simples print print (‘message’) #affichage d’un texte print print (variable) #affichage de la valeur d’une variable print print (‘msg1’, v1,..) #affichage mixte print print (expression) #affichage du résultat d’une expression print print (v1, v2, v3,…, sep=‘séparateur’) #affichage avec séparateur spécifique print print (‘message’) #affichage d’un texte print print (variable) #affichage de la valeur d’une variable print print (‘msg1’, v1,..) #affichage mixte print print (expression) #affichage du résultat d’une expression print print (v1, v2, v3,…, sep=‘séparateur’) #affichage avec séparateur spécifique

20 Les structures simples print("donner a") a=10 print("a = ",a) b=20 print("a = ",a,"et b = ",b) print(a+b) print("donner a") a=10 print("a = ",a) b=20 print("a = ",a,"et b = ",b) print(a+b)

21 Formation Entrée de données : Pour lire une entrée (donnée) dans un programme, on a besoin d’une opération d’entrée, appelée aussi opération de lecture. Syntaxe: Les structures simples nom_variable= input (‘message’) Message qui s’affiche avant la saisie du contenu de la variable. (optionnel)

22 Formation Activité 8 : Entrée de données  Ecrire un script Python qui permet de saisir deux entiers a et b puis d’afficher le quotient et le reste de la division de a par b. Les structures simples La saisie d‘une donnée en Python est par défaut de type chaîne. Le casting en Python se fait par la spécification du type à aboutir en utilisant les fonctions int(), float(), str(). a=int (input ('Donner a: ')) b=int (input ('Donner b: ')) print('Le quotient = ', a//b) print('Le reste = ', a%b) a=int (input ('Donner a: ')) b=int (input ('Donner b: ')) print('Le quotient = ', a//b) print('Le reste = ', a%b)

23 Formation Activité 9 : Saisie simultanée de données-1  Saisir le nom, le prénom et l'âge d’une personne, dans trois variables avec un seul appel à la fonction input. syntaxe Les structures simples v1, v2, v3,… = input (" message: "). split ( "séparateur ") Le séparateur peut être: Espace, Point, virgule, … Le séparateur peut être: Espace, Point, virgule, … nom, prenom, age = input (" Donner votre nom, prénom et votre âge : "). split (",")

24 Formation Activité 10 : Saisie simultanée de données-2  Saisir le nom, le prénom et l'âge d’une personne, dans une variable pr.  Afficher le type de pr. Les structures simples La saisie de plusieurs données simultanément dans une seule variable renvoie au type ‘list’. pr= input (" Donner votre nom, prénom et votre âge : "). split ( " " ) type (pr) pr= input (" Donner votre nom, prénom et votre âge : "). split ( " " ) type (pr)

25 Formation Le type ‘list’: Présentation Une liste est une collection ordonnée d’éléments éventuellement hétérogènes; ces éléments sont séparés par des virgules, et entourés de crochets et accessibles à l’aide des indices associés (maliste [indice]). Déclaration : Les structures de données Maliste= [] #déclartion d’une liste vide Maliste= [v1, v2, v3,…] #initialiser une liste par des valeurs Maliste= [] #déclartion d’une liste vide Maliste= [v1, v2, v3,…] #initialiser une liste par des valeurs ‘list’‘list’

26 Formation Activité 11 : Le type ‘list’ Présentation  Visualiser l’âge de la personne pr de l’Activité 10.  Modifier l’âge de cette personne.  Afficher la variable pr.  Copier dans une nouvelle variable p2 la variable pr.  Modifier l’âge de p2.  Consulter l’âge de pr. Les structures de données ‘list’‘list’

27 pr = input (" Donner votre nom, prénom et votre âge : "). split ( " " ) print(pr[2] ) pr [ 2 ] = 30 print(pr[2]) pr [ -1 ] = 40 print(pr[-1]) p2 = pr print(p2); p2 [ -1 ] = 15 print(pr); pr = input (" Donner votre nom, prénom et votre âge : "). split ( " " ) print(pr[2] ) pr [ 2 ] = 30 print(pr[2]) pr [ -1 ] = 40 print(pr[-1]) p2 = pr print(p2); p2 [ -1 ] = 15 print(pr); En Python une liste est modifiable. La copie des variables de type "list" se fait par référence. En Python une liste est modifiable. La copie des variables de type "list" se fait par référence.

28 Formation Activité 12 : Quelques traitements sur les listes-1 Soit cl1 une liste contenant les valeurs suivantes: ‘rouge’, ‘bleu’, orange’.  Déclarer la liste cl1.  Afficher la liste cl1.  Réaliser une copie de cl1 dans cl2 (avec une duplication du contenu dans la RAM)  Remplacer la couleur ‘orange’ par ‘vert’ dans la liste cl1.  Afficher la liste cl2.  Afficher de nouveau cl1. Les structures de données ‘list’‘list’ cl2 = cl1 [ : ] Ou bien import copy cl2 = copy.deepcopy (cl1) cl2 = cl1 [ : ] Ou bien import copy cl2 = copy.deepcopy (cl1)

29 cl1=["rouge","bleu","orange"] print("les valeurs de cl1 sont : ",cl1) cl2=cl1[:] cl2[2]="vert" print("les valeurs de cl2 sont : ",cl2) print("les nouvelles valeurs de cl1 sont : ",cl1) cl1=["rouge","bleu","orange"] print("les valeurs de cl1 sont : ",cl1) cl2=cl1[:] cl2[2]="vert" print("les valeurs de cl2 sont : ",cl2) print("les nouvelles valeurs de cl1 sont : ",cl1) Les structures de données

30 Formation Quelques fonctions sur les listes Les structures de données ‘list’‘list’ FonctionRole lenRetourne la taille d’une liste maxRetourne le maximum d’une liste minRetourne le minimum (maximum) d’une liste sumRetourne le total des éléments d’une liste numérique listConvertit une chaine en une liste delEfface un élément d’une liste setRetourne une nouvelle liste sans doublons.

31 Formation Quelques méthodes sur les listes Les structures de données ‘list’‘list’ MéthodeRôle append(x)Ajoute l’élément x à la fin de la liste. count(x)Retourne le nombre d’occurrence de l’élément x dans la liste. index(x)Retourne l’indice de l’élément x dans la liste. sort()Tri les éléments la liste dans l’ordre croissant. insert(i, x)Insère l’élément x à la position i dans la liste, lorsque i>=len(), l’insertion sera un ajout (append). remove (x)Efface la première occurrence de l’élément x dans la liste. pop(i)Efface l’élément d’indice i dans la liste et retourne l’élément effacé.

32 Formation Activité 15 : Quelques traitements sur les listes 1. Générer une liste L1 contenant les 10 premiers chiffres. 2. Générer une liste L2 contenant 10 chiffres aléatoires. Les structures de données ‘list’‘list’ L1 = range ( 1 0 ) L1 est de type range, donc il faut la convertir en une liste  L1 = list( L1) Ou bien on peut faire dès le début :  L1 = list ( range ( 10 ) ) L1 = range ( 1 0 ) L1 est de type range, donc il faut la convertir en une liste  L1 = list( L1) Ou bien on peut faire dès le début :  L1 = list ( range ( 10 ) ) import random L1 = [random.randrange (10 ) for i in range (10) ] import random L1 = [random.randrange (10 ) for i in range (10) ]

33 3. Générer une liste L3 contenant 10 nombres aléatoires entre (20 et 40). 4. Créer une liste L4 contenant 10 nombres aléatoires entre (20 et 40) avec la valeur de 40 est inclue : 5. Générer une liste L5 contenant 10 lettres majuscules aléatoires. import random L1 = [random.randrange (20,40 ) for i in range Remarque : La valeur 40 est exclue de la liste import random L1 = [random.randrange (20,40 ) for i in range Remarque : La valeur 40 est exclue de la liste Les structures de données import random L1= [random.randint (20,40 ) for i in range (10) ] import random L1= [random.randint (20,40 ) for i in range (10) ] import random L1 = [chr (65+random.randint (0,25 )) for i in range (10) ] import random L1 = [chr (65+random.randint (0,25 )) for i in range (10) ]

34 6. Mélanger aléatoirement les éléments de la liste. 7. Supprimer les doublons de la liste. import random random.shuffle ( L1 ) import random random.shuffle ( L1 ) import random L1 = set (L1) import random L1 = set (L1) Les structures de données

35 Formation Activité 16 : 1) Créer dans L2 une copie protégée de L1 contre la modification. 2) Modifier le 1èr élément de L2. Les structures de données ‘tuple’‘tuple’ L2 = tuple (L1) Impossible car le type tuple est en lecture seule En Python le type tuple permet de créer des sortes de constantes qui n'ont donc pas vocation à changer.

36 3) Exécuter l’instruction L2 = (L1, ), puis afficher le type de L2. 4) Afficher la taille de L2. 5) On veut avoir pour chaque élément de L1 son nombre d’occurrence. len (L2) On a doit donc passer vers le type ‘dict’ qui est similaire au type enregistrement Les structures de données

37 Formation Un dictionnaire en Python est une sorte de liste mais au lieu d'utiliser des index, on utilise des clés, c'est à dire des valeurs autres que numériques. Les structures de données ‘dict’‘dict’

38 Formation Activité 17 : Ecrire un programme Python qui calcule puis affiche la racine carrée, s’il existe, d’un réel donné. Une structure conditionnelle permet à un programme de modifier son traitement en fonction d’une condition. Les structures de contrôle Conditionnelle if condition : Instruction1 Instruction2 ….. InstructionN if condition : Instruction1 Instruction2 ….. InstructionN

39 Formation Activité 18 : Ecrire un programme Python qui affiche à partir d’une âge donné, un message indiquant si une personne est adulte ou jeune. Les structures de contrôle Conditionnelle if condition : Instruction1 ….. InstructionN else : Instruction1 ….. InstructionN if condition : Instruction1 ….. InstructionN else : Instruction1 ….. InstructionN

40 Formation Activité 19 : Ecrire un programme Python qui affiche la nature d’un caractère donné. Les structures de contrôle Conditionnelle if condition1 : traitement1 elif condition2 : traitement2 … elif conditionn-1 : traitementn-1 else: traitementn if condition1 : traitement1 elif condition2 : traitement2 … elif conditionn-1 : traitementn-1 else: traitementn

41 Formation Présentation: Les structures de contrôle itératives ou les boucles s’utilisent pour répéter plusieurs fois l’exécution d’une partie du programme. Python vous fournit 2 types de boucle : la boucle for et la boucle while. Syntaxe: La séquence peut-être tout objet itérable : range, une liste, une chaîne … élément prend successivement la valeur de chaque élément de la séquence. Les structures de contrôle itérative while condition : bloc d'instructions indentés #suite du programme while condition : bloc d'instructions indentés #suite du programme for élément in séquence : bloc d'instructions indentés # suite du programme for élément in séquence : bloc d'instructions indentés # suite du programme

42 Formation Activité 20 :  Afficher les caractères d’une chaine donnée. (Caractère par ligne puis sur la même ligne séparés par des espaces)  Compter puis afficher le nombre de voyelles dans une chaine donnée.  Afficher les éléments de la liste L=[‘rouge’, ‘vert’, orange’].  Afficher la table de multiplication par 8 (1 x 8 =8, 2 x 8=16, …). Les structures de contrôle itérative

43 Formation Activité 22 : Ecrire un script Python qui permet de calculer puis afficher le PGCD de deux nombres a et b. Les structures de contrôle itérative

44 Formation Présentation :  Les fonctions sont analogues à des sous-programmes.  Une fonction est une suite d'instructions que l'on peut appeler avec un nom.  En Python, une fonction peut retournée 0 ou plusieurs valeurs. Syntaxe: Les fonctions def nom_fonction (paramètres): bloc d'instructions indentés return résultat # suite du programme def nom_fonction (paramètres): bloc d'instructions indentés return résultat # suite du programme

45 Formation Activité 23 : A l'aide de la fonction randint() du module random, écrire une fonction qui retourne un mot de passe de longueur N (chiffres, lettres minuscules ou majuscules). On donne : ch = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' Exemple d’appel: Les fonctions

46 Formation Activité 24 : Ecrire une fonction retourne l’équivalent binaire et hexadécimal d’un entier n. Les fonctions

47 Merci pour votre attention


Télécharger ppt "LE LANGAGE DE PROGRAMMATION Formation RABAH Mohamed Ali."

Présentations similaires


Annonces Google