Langage évolué & Business Intelligence Chapitre 2 – Le langage Python : Notions

Langage évolué & Business Intelligence Chapitre 2 – Le langage Python : Notions de base Dr. Zahra KODIA AOUINA 2ÈME LFIGI Institut nstitut SSupérieur de upérieur de GGestion de estion de TTunisunis Plan du Chapitre 1. Historique du langage 2. Présentation générale de Python 3. Environnement de développement intégré de Python 4. Mode interactif & mode script 5. Commentaires, Aide et modules en Python 6. Types élémentaires 7. Affectation des variables et mots réservés 8. Opérations d’entrée/sortie 9. Structures conditionnelles et itératives DR ZAHRA KODIA AOUINA 2 Python est un langage de programmation développé depuis 1989 par le développeur néerlandais Guido Van Rossum et de nombreux collaborateurs. Le nom Python revient à une série de comédie des années 70 de la BBC nommée “Monty Python’s Flying Circus” Principales versions officielles parues : Python 1.0 – Janvier 1994, Python 2.0 – Octobre 2000 Python 2.4 – Novembre 2004, Python 2.5 – Septembre 2006 Python 2.6 - Octobre 2008, Python 2.7 – Juillet 2010 Révolution du langage python et apparition de la v3 ◦Python 3.0 - Décembre, 2008 ◦Python 3.5 – Septembre, 2015 1)Historique du langage Dr Zahra KODIA AOUINA 3/76 1)Historique du langage Classement TIOBE (Septembre 2016) Septembre 2016 Avril 2015 Avril 2014 Langage de Programmation Ratings Evolution 1 1 2 Java 18.236% -1.33% 2 2 1 C 10.955% -4.67% 3 3 4 C++ 6.657% -0,13% 4 5 5 C# 5.493% +0.58% 5 8 8 PYTHON 4,302% +0.64% 6 6 9 JAVASCRIPT 3.297 +0,59% 7 7 7 PHP 3.009 +0.32% 9 12 13 PERL 2,33% +0,43% Dr Zahra KODIA AOUINA 4/76 1)Historique du langage Classement PYPL (Septembre 2016) Le classement PYPL (PopularitY of Programming Language Index) se base sur l’analyse du nombre de fois où un tutoriel pour un langage spécifique est recherché sur Google. DR ZAHRA KODIA AOUINA 5 2)Présentation générale de Python C’est un langage qui inclut tous les types de données, les branchements conditionnels, les boucles, l’organisation du code en procédures et fonctions, objets et classes, découpage en modules. 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. DR ZAHRA KODIA AOUINA 6 2)Présentation générale de Python Mode compilé vs. mode interprété Langage interprété : + portabilité application ; - lenteur (ex. R, VBA, Python…) Langage compilé : + rapidité ; - pas portable (ex. Lazarus) Langage pseudo-compilé : + portabilité plate-forme ; - lenteur (ex. Java) Python est interprété, il est irrémédiablement lent, mais… on peut lui associer des librairies intégrant des fonctions compilées qui, elles, sont très rapides. DR ZAHRA KODIA AOUINA 7 Python est un logiciel libre « free » : utilisation sans restriction dans les projets commerciaux; Python est un langage portable (peut fonctionner sur différentes plateformes OS (operating system); Python convient aussi bien à des scripts d'une dizaine de lignes qu'à des projets complexes de plusieurs dizaines de milliers de lignes; La syntaxe de Python est très simple et, combinée à des types de données évolués; Python est un Langage de haut niveau (faire beaucoup avec peu de code, un programme python est 3 à 5 fois moins cours qu’un programme C). 2)Présentation générale de Python Avantages(1/4) Dr Zahra KODIA AOUINA 8/76 2)Présentation générale de Python Un exemple ! DR ZAHRA KODIA AOUINA 9 Python est un langage orienté objet qui supporte l’héritage et la surcharge des opérateurs; Python est Dynamiquement typé: ◦tout objet manipulable par le programmeur possède un type bien définit à l'exécution, ◦qui n'a pas besoin d'être déclaré à l'avance. Python est un langage inter-opérable (avec C Cython, Java Jython, C++, Fortran F2Py…) Python gère ses ressources (mémoire, descripteurs de fichiers...) sans intervention du programmeur, ◦par un mécanisme de comptage de références, ◦il intègre un système de gestion de mémoire automatique (ramasse miette ou garbage collector) 2)Présentation générale de Python Avantages(2/4) Dr Zahra KODIA AOUINA 10/76 Python intègre, comme Java ou les versions récentes de C++, un système d'exceptions, ◦permettant de simplifier considérablement la gestion des erreurs, ◦Lorsqu'une exception se produit, l'exécution normale du programme est interrompue et l'exception est traitée !! Multi paradigmes, supportant les principaux styles de programmation : ◦impératif, procédural, orienté objet... Evolutif, Python est un langage qui continue à évoluer, grâce à une communauté d’utilisateurs très actifs 2)Présentation générale de Python Avantages(3/4) Dr Zahra KODIA AOUINA 11/76 Langage polyvalent : Nous pouvons presque tout faire avec Python grâce à ses bibliothèques variées Utilisé par de grands acteurs dans le monde: La NASA, Google, Youtube, Mozilla… De plus en plus utilisé dans la recherche, l’enseignement et l’industrie. 2)Présentation générale de Python Avantages (4/4) Dr Zahra KODIA AOUINA 12/76 Python, est un langage de programmation de plus en plus populaire utilisé entre autres: ◦WEB: Google (pure Python et Django*), Youtube, Mozilla, Yahoo, eBay (Plone**), Nokia (Plone**) ◦Scientifique : la NASA (pure Python et Plone), la CIA (Plone)… la liste est bien trop longue. ◦L’enseignement principalement dans plusieurs pays *: Django est un Framework (Plateforme de développement Web) écrit en Python. **: Plone permet à des personnes n'ayant pas de connaissance technique de créer et mettre à jour des informations sur un site web public ou sur un intranet en utilisant un simple navigateur web 2)Présentation générale de Python Domaines d’applications Dr Zahra KODIA AOUINA 13/76 Plusieurs EDI sont disponibles, IDLE : est un environnement de développement intégré fourni avec Python (bon choix pour débutant), IDLE propose un certain nombre d'outils : ◦un éditeur de texte (pour l’écriture de script) avec une coloration syntaxique, une indentation automatique et l’auto-complétion*. ◦un interpréteur (pour exécuter le programme) ◦un débogueur (pour tester le programme) C’est l’EDI Le plus populaire, soit 23% des utilisateurs de python *: Auto-complétion – ou complément automatique – est une fonctionnalité d’un logiciel qui propose à l’utilisateur des compléments de réponses pouvant convenir aux premières mots ou aux premières phrases qu’il a commencé à taper dans le champ de saisie. 3) Environnement de développement intégré de Python Dr Zahra KODIA AOUINA 14/76 Il existe d'autres IDE pour Python : • Eclipse/Pydev (17,31%), • NetBeans, • Spyder, • Eric... Pour les non débutants d’autres IDE complet : • winPython , • anaconda V3, • Python(x,y).. 3) Environnement de développement intégré Dr Zahra KODIA AOUINA 15/76 Une fois installé Python (la dernière version 3.5.0) peut être utilisé en deux modes, mode interactif ou en mode script: Image extraite du cours de Jean-Luc Charles, Eric Ducasse, Art et Métiers Paris Tech 4) Mode interactif & mode script Dr Zahra KODIA AOUINA 16/76 Les instructions tapées sont exécutées directement par l’interpréteur python, c’est aussi le mode calculette . 4) Mode interactif & mode script Mode interactif Dr Zahra KODIA AOUINA 17/76 Une nouvelle fenêtre s’ouvre , vous écrivez votre code Python. Il faut enregistrer dans un fichier d’extension « .py » 4) Mode interactif & mode script Mode script (1/2) Dr Zahra KODIA AOUINA 18/76 Exécution : 4) Mode interactif & mode script Mode script (2/2) Dr Zahra KODIA AOUINA 19/76 5) Commentaires, Aide et modules en Python Commentaires Tout ce qui suit le caractère # est considéré comme un commentaire et ne sera jamais évalué. DR ZAHRA KODIA AOUINA 20 L’utilisation de l’aide en ligne se fait par la commande help(identificateur) Exemple : >>>help(int) Help on class int in module builtins: class int(object) | int(x=0) -> integer | int(x, base=10) -> integer …. Methods defined here: | __abs__(...) | x.__abs__() <==> abs(x) | __add__(...) | x.__add__(y) <==> x+y | __and__(...) | x.__and__(y) <==> x&y | __bool__(...) | x.__bool__() <==> x != 0 5) Commentaires, Aide et modules en Python Utilisation de l’aide Dr Zahra KODIA AOUINA 21/76 Trois manières d’import de modules 1ère manière: >>>import math >>>dir(math) ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos',………, 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'] >>> math.ceil(7.8989) #partie entière supérieure 8 >>> math.floor(7.8989) #partie entière inférieure 7 >>>help(math.ceil) Help on built-in function ceil in module math: ceil(...) ceil(x) Return the ceiling of x as an int. This is the smallest integral value >= x. 5) Commentaires, Aide et modules en Python Import de modules (1/4) Dr Zahra KODIA AOUINA 22/76 2ème manière: Utilisation d’un alias >>>import math as m >>>dir(m) ['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos',………, 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'] >>> m.sqrt(2) 1.4142135623730951 >>> m.tan(m.pi) -1.2246467991473532e-16 5) Commentaires, Aide et modules en Python Import de modules (2/4) Dr Zahra KODIA AOUINA 23/76 3ème Manière : Importation de toutes les fonctions d’un module >>>from math import * >>>dir(math) ->Erreur Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> dir(math) NameError: name 'math' is not defined Mais les fonctions du module sont directement accessibles >>>sqrt(2) 1.4142135623730951 >>> help(abs) Help on built-in function abs in module builtins: abs(...) abs(number) -> number Return the absolute value uploads/Histoire/ chap2-le-amp-bi-pdf.pdf

  • 25
  • 0
  • 0
Afficher les détails des licences
Licence et utilisation
Gratuit pour un usage personnel Attribution requise
Partager
  • Détails
  • Publié le Jui 19, 2021
  • Catégorie History / Histoire
  • Langue French
  • Taille du fichier 1.9051MB