Langages Informatiques Programmation avec le langage Python Un outil commode au
Langages Informatiques Programmation avec le langage Python Un outil commode au service de l’ingénieur Xavier Dupré Avant-propos Quelques années passées à initier les élèves à l’informatique avec différents langages me poussent à dire que le langage Python est sans doute un langage qui s’apprend plus vite sans pour autant être limité. Les ordinateurs ont progressé et il n’est plus souvent nécessaire d’utiliser des langages tels que le C certes plus rapide et plus connu mais aussi plus difficile à maîtriser. A partir de 2004, le langage Python a été utilisé à l’ENSAE 1 pour initier les élèves à la programmation et, depuis cette date, j’ai pu observer un regain d’intérêt des élèves pour cette matière qui s’appuyait auparavant sur le langage C. Certains étudiants avouent même s’être amusés ; leur projet de programmation n’est plus centré sur un langage mais sur les résultats qu’il permet d’obtenir. Le langage Python suffit pour la plupart des besoins d’un ingénieur et permet de réaliser beaucoup plus rapidement des programmes informatiques qui fonctionnent sur les principaux systèmes d’exploitation. Internet fournit également un panel très large de librairies pour faire du calcul scientifique, des jeux ou encore des sites Internet. Il suffit parfois de quelques minutes pour télécharger une extension et s’en servir. Malgré ces avantages, il existe peu de livres de langue française sur ce langage, beaucoup moins que ceux écrits en langue anglaise dont quelques uns seulement sont traduits. Ce livre n’aborde pas des sujets comme la programmation web ou l’utilisation conjointe des langages Python et SQL. La description du langage couvre les be- soins qui sont ceux d’un ingénieur, c’est-à-dire une personne dont la programma- tion ne constitue pas l’essentiel de son travail. Chaque notion est illustrée par des exemples 2. Ceux-ci sont particulièrement présents lors de l’introduction de notions pas toujours évidentes à comprendre comme les threads, les interfaces graphiques et l’utilisation de C++. Le livre se ferme sur plusieurs chapitres ne contenant que des exercices et leurs corrections. Ces exercices sont de deux types : des travaux dirigés et des problèmes courts. Ces derniers ont été posés lors des examens à l’ENSAE et ont été conçus pour préparer les élèves à répondre aux questions techniques lors des entretiens d’embauche. Le langage Python évolue assez vite, il est de plus en plus utilisé ce qui explique la multitude d’informations qu’on peut trouver sur Internet. Le site officiel 3 recense la plupart des extensions (plus d’une centaine) accessibles gratuitement. Il existe également de nombreux sites d’aide comme WikiPython 4 qui recense des exemples de programmes sur des sujets variés. L’anglais est la langue d’échange par excellence 1. Ecole Nationale de la Statistique et de l’Administration Economique, http://www.ensae.fr/ 2. L’ensemble de ces exemples est accessible depuis le site http://www.xavierdupre.fr. 3. http://www.python.org/ 4. http://wikipython.flibuste.net/ dans le monde informatique et le langage Python n’y échappe pas même si les moteurs de recherches retournent presque toujours des résultats en français pour des requêtes concernant Python, à condition toutefois d’y insérer un mot de syntaxe exclusivement française. Il n’est pas utile de lire tous les chapitres pour savoir programmer. Le chapitre 1 décrit l’installation du langage Python et son utilisation via des éditeurs de texte. Les chapitres 2 et 3 introduisent les premiers concepts, à partir de là, il est déjà possible d’écrire des programmes conséquents et notamment de lire les chapitres 11 à 12 pour s’exercer. Les chapitres 4 et 5 s’intéressent à la programmation objet, qui n’est pas indispen- sable dans un premier temps. La programmation est utilisée en tant qu’outil pour atteindre un objectif, réaliser une étude ou tester un modèle. Nombreux sont les élèves qui choisissent de contourner les classes et les objets sans pour autant nuire à la qualité de leur travail ; les programmes qu’ils conçoivent sont sans doute moins lisibles mais ils parviennent à l’objectif fixé. Le chapitre 6 présente comment créer ses propres extensions. Les derniers para- graphes ne concernent que des utilisateurs experts puisqu’ils parlent de l’utilisation conjointe des langages Python et C++ à partir d’un exemple conçu à cet effet et utilisable en peu de temps 5. Cette technique est intéressante dans des domaines où les calculs doivent être impérativement très rapides comme en finance, matière à laquelle sont formés les étudiants de l’ENSAE. Le chapitre 7 introduit les fichiers où comment conservées des résultats sur disque dur. Le chapitre 8 présente les interfaces graphiques et le chapitre 9 les threads. Les chapitres 10 à 12 ne contiennent que des exercices et problèmes sur lesquels plusieurs promotions de l’ENSAE ont été évaluées. 5. Concernant ce point, cet exemple téléchargeable permet de construire entièrement un module Python écrit en C++, l’ajout d’une fonctionnalité ne prenant que quelques minutes. Cet exemple fonctionne sous Microsoft Windows avec Microsoft Visual C++, il utilise la librairie Boost Python. Microsoft Windows est le système d’exploitation le plus courant dans les sociétés. Table des matières partie I Le langage Python 9 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.1 Ordinateur et langages . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2 Présentation du langage Python . . . . . . . . . . . . . . . . . . . . . 12 1.3 Installation du langage Python . . . . . . . . . . . . . . . . . . . . . 14 1.4 Installation d’un éditeur de texte . . . . . . . . . . . . . . . . . . . . 18 1.5 Premier programme . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1.6 Installation d’extensions (ou modules externes) . . . . . . . . . . . . 23 1.7 Outils connexes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 2. Types et variables du langage Python . . . . . . . . . . . . . . . . . . . . . 31 2.1 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 2.2 Types immuables (ou immutable) . . . . . . . . . . . . . . . . . . . . 32 2.3 Types modifiables (ou mutable) . . . . . . . . . . . . . . . . . . . . . 42 2.4 Extensions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3. Syntaxe du langage Python (boucles, tests, fonctions) . . . . . . . . . . . . 57 3.1 Les trois concepts des algorithmes . . . . . . . . . . . . . . . . . . . . 57 3.2 Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.3 Boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 3.4 Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 3.5 Indentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 3.6 Fonctions usuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 3.7 Constructions classiques . . . . . . . . . . . . . . . . . . . . . . . . . 87 4. Classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . uploads/Ingenierie_Lourd/ initiation-via-python-ellipse-mai-2010.pdf
Documents similaires










-
48
-
0
-
0
Licence et utilisation
Gratuit pour un usage personnel Attribution requise- Détails
- Publié le Apv 25, 2022
- Catégorie Heavy Engineering/...
- Langue French
- Taille du fichier 8.3649MB