Menu

FORMATIONS / INFORMATIQUE / LANGAGE / DEVELOPPEMENT / Langage Bas Niveau

LD-026  PROGRAMMATION PYTHON |  4 jours  | 28 heures

Cours en presentielA distanceCours mixte

01/. Identifier Python

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

02/. Maîtriser la 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/. Gérer les fonctions

  • Définitions
  • Appels et paramètres en Python

04/. Utiliser les 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/. Gérer des fichiers

  • Types de fichiers
  • Opérations sur les fichiers

06/. Manipuler des chaines de caractères

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

07/. Gérer l'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/. Employer Python et XML

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

09/. Employer les outils de développement et les interactions avec Python

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

10/. Faire des calculs scientifiques avec Python

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

11/. Gérer 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/. Déterminer les versions

    13/. Pratiquer la 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éciales
    • 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/. Utiliser 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/. Identifier les 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/. Maîtriser l'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évelopper en multi-plates-formes

      18/. Gérer le packaging / Livraison de modules

        19/. Utiliser le multithreading

          20/. Gérer le parallélisme avec Mpi

            21/. Identifier les Best Practices

              22/. Distinguer la qualité du code source Python / Sphynx

                23/. MVC

                  24/. Créer un IHM avec Qt

                    25/. Conclure

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



                    Tarif
                    2200€ HT

                    Public
                    Développeurs, chefs de projet. Si vous êtes en situation de handicap, merci de bien vouloir nous contacter.

                    Objectifs
                    Développer des applications. Extraire et analyser des données binaires ou textuelles.

                    Prérequis
                    Évaluation diagnostique réalisée en amont. Bonnes connaissances en programmation C++.

                    Méthodes pédagogiques
                    Exposés alternant théorie et pratique, études de cas, correction travaux pratiques et ateliers. 1 support de cours par personne.

                    Ressources pédagogiques
                    1 Formateur. 1 ordinateur par personne, un vidéoprojecteur par salle de cours, un tableau numérique. Connexion Internet très haut débit.

                    Évaluation et sanction de fin de parcours
                    Évaluation formative par le formateur pendant le programme. Évaluation des acquis en fin de session. Attestation de fin de formation délivrée.

                    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