Menu

FORMATIONS / INFORMATIQUE / LANGAGE / DEVELOPPEMENT / Langage Bas Niveau

LD-026  PROGRAMMATION PYTHON |  5 jours


01/. Introduction à Python

  • Présentation du langage Python Installation et prise en main de Python

02/. Syntaxe du langage Python

  • Les identifiants et les références. Les conventions de codage et les règles de nommage Les blocs, les commentaires Les types de données disponibles Les variables, l'affichage formaté, la portée locale et globale La manipulation des types numériques La manipulation des tableaux dynamiques (liste), des tableaux statiques (tuple) et des dictionnaires L'utilisation des fichiers La structure conditionnelle if/elif/else Les opérateurs logiques et les opérateurs de comparaison Les boucles d'itérations while et for. Interruption d'itérations break/continue La fonction range L'écriture et la documentation de fonctions Les Lambda expression Les générateurs La structuration du code en modules

03/. Fonctions

  • Définitions Appels et paramètres en Python

04/. Modules

  • Programmation modulaire, espaces de noms et packages Introduction à l'écriture de classes Stratégies de traitements de données, la place de Python Utilisation des modules standards, OptParse, Struct Installation et utilisation d'un module tiers, GnuPlot

05/. Gestion des fichiers

  • Types de fichiers Opérations sur les fichiers

06/. Manipulation des chaines de caractères

  • Les fonctions de chaines Les expressions régulières La documentation intégrée et en ligne

07/. Accès aux bases de données en Python

  • MySQL et SQL L'accès aux bases de données Gestion de données

08/. Python et XML

  • Outils de traitement XML Parsing XML : les différentes techniques La librairie elementtree La librairie lxml

09/. Outils de développement et interactions avec Python

  • Eclipse / Pydev, PyLint, PyChecker Zope, Plone, Django

10/. Calcul scientifique avec Python

  • SciPy NumPy Le module incontournable &
  • #9644
  • Héritier de Numeric et numarray &
  • #9644
  • Classes de base pour SciPy Installation &
  • #9644
  • Module Python standard &
  • #9644
  • Optimisation plateforme: blas, lapack... Utilisation &
  • #9644
  • Traitement Python des tableaux pour calcul numérique Fonctions de manipulation Bibliothèque mathématique &
  • #9644
  • Support pour vos propres bibliothèques Interface Python pur API pour encapsulation de codes Fortran, C/C++ sage, ...

11/. Les différentes implémentations

  • CPython Implémentation initiale basée sur le langage C ANSI Jython Implémentation permettant de mixer Python et java dans la même JVM IronPython Implémentation permettant d'utiliser Python pour Microsoft .NET PyPy Implémentation de Python en Python CLPython Implémentation de Python en Common Lisp

12/. Les versions

  • Il existe 2 versions de Python : 2.7 et 3.1. Python 3.x n'est pas une simple amélioration ou extension de Python 2.x. Tant que les auteurs de librairies n'auront pas effectué la migration, les deux versions devront coexister.

13/. Programmation Objet en Python

  • Les particularités du modèle objet de Python L'écriture de classes et leur instanciation Les constructeurs et les destructeurs La protection d'accès des attributs et des méthodes La nécessité du paramètre Self L'héritage simple, l'héritage multiple, le polymorphisme Les notions de visibilités Les méthodes spéciale L'introspection L'implémentation des interfaces Les bonnes pratiques et les modèles de conception courants (Design Pattern)L'utilisation du mécanisme d'exception pour la gestion des erreurs



14/. Utilisation StdLib

  • Les arguments passés sur la ligne de commande L'utilisation du moteur d'expressions régulières Python avec le module "
  • re"
  • , les caractères spéciaux, les cardinalités La manipulation du système de fichiers Présentation de quelques modules importants de la bibliothèque standard : module "
  • sys"
  • , "
  • os"
  • , "
  • os.path"
  • Empaquetage et installation d'une bibliothèque Python Les accès aux bases de données relationnelles, le fonctionnement de la DB API

15/. Outils QA

  • Les outils d'analyse statique de code (pylint, pychecker) L'analyse des comptes rendus d'analyse (types de messages, avertissements, erreurs) Extraction automatique de documentation Le débogueur de Python (exécution pas à pas et analyse post-mortem) Le développement piloté par les tests Les modules de tests unitaires Python L'automatisation des tests, l'agrégation de tests Les tests de couverture de code, profiling

16/. Interfaçage Python/C

  • Présentation du module Ctypes Le chargement d'une librairie C Appel d'une fonction La réécriture d'une fonction Python en C avec l'API Python/C La création de modules C pour Python avec Pyrex L'Interpréteur Python dans C L'utilisation du profileur de code

17/. Développement multi-plates-formes

    18/. Packaging / Livraison de modules

      19/. Multithreading

        20/. Parallélisme avec Mpi

          21/. Best Practices

            22/. Qualité du code source Python / Sphynx

              23/. MVC

                24/. Création d'IHM avec Qt

                  25/. Conclusion

                  • Analyse critique de Python L'évolution du langage Eléments de Webographie et de bibliographie



                  Public
                  Développeurs, chefs de projet

                  Objectifs
                  Maîtriser Python pour extraire et analyser des données binaires ou textuelles

                  Prérequis
                  Bonnes connaissances en programmation C++.

                  Méthodes pédagogiques
                  1 ordinateur et 1 support de cours par personne + 1 vidéoprojecteur.
                  Évaluation par écrit en fin de cours et attestation de stage délivrée en fin de formation.

                  VOS DATES DE FORMATION


                  • Vous souhaitez organiser cette formation à une date spécifique ?
                  • Vous ne trouvez pas de date de session sur les semaines à venir ?
                  Contactez nos équipes au 05 59 14 62 62 ou remplissez le formulaire de contact