Python avancé

SKU: PYA

Perfectionnez vos connaissances en Python, en passant en revue différents éléments syntaxiques peu connus du langage, des notions avancées de programmation objet, ou encore les notions de programmation concurrente. Vous apprendrez également à optimiser vos programmes, et les déployer. Nous aborderons également les bonnes pratiques à mettre en œuvre afin d’optimiser les performance de vos applications, et rendre vos projets plus robustes et sécurisés. Enfin, une partie sera consacrée à l’utilisation de librairies qui font le succès du langage.

– Mettre en œuvre des notions avancées de programmation orientée objet
– Utiliser des fonctionnalités peu connues du langage
– Packager efficacement une application
– Utiliser des environnements virtuels
– Mettre en place de bonnes pratiques de code
– Optimiser les performances des programmes
– Utiliser des librairies pour le calcul scientifique

Description

Rappels sur Python

  • Historique et dates importantes
  • Les différences entre Python 2 et Python 3
  • Le site officiel et la documentation
  • Bien choisir son environnement de développement

Rappels sur la syntaxe

  • Variables et types
  • Les séquences
  • Le slicing
  • La décomposition
  • Les conditions
  • Les boucles for et while
  • La clause else dans les boucles
  • Listes en compréhension
  • Les fonctions
  • Paramètres facultatifs, positionnels, à nombre variable, …

Aller plus loin avec la programmation objet

  • Rappels sur la programmation objet : classes, instances, …
  • Les propriétés
  • Les attributs de classe
  • Les méthodes de classe et méthodes statiques
  • L’introspection
  • La classe object
  • Les méthodes spéciales
  • Le destructeur
  • Héritage simple et héritage multiple
  • Polymorphisme et duck typing
  • La classe type
  • Les métaclasses
  • Abstract Base Class
  • Rappels sur les exceptions

Fonctionnalités avancées

  • Les générateurs
  • Les décorateurs
  • Les itérateurs
  • Les context managers
  • Les closures

Packager et déployer une application Python

  • Le gestionnaire de paquets pip
  • Le Python Package Index (PyPI)
  • Installer un module externe
  • Le module setuptools
  • Organiser son package
  • Le MANIFEST et le README
  • Packager son application au format wheel
  • Déployer son package sur PyPI

Travailler avec un environnement virtuel

  • L’intérêt d’utiliser un environnement virtuel
  • Les solutions disponibles
  • Installer un module dans un environnement virtuel
  • Gérer efficacement les dépendances d’un projet

Optimisation et parallélisme

  • Profilage de code avec timeit et cProfile
  • Les queues : créer des files synchronisées
  • Le threading
  • Le multiprocessing

Des librairies utiles

  • De vrais scripts Python : le module argparse
  • HTTP pour les humains : le module requests
  • Parser du XML et du HTML : le module xml.etree
  • Python pour la science : les modules Numpy et Matplotlib
  • Intelligence artificielle : le module Scikit-Learn

Additional information

Public visé

Administrateurs système, Data scientists, Développeurs

Prérequis

Connaissance de base de Python

Modalités d’évaluation

J'évalue votre progression via QCM, mises en situation, travaux pratiques, et tests de positionnement en début et fin de formation.

Accessibilité

Cette formation est accessible aux personnes en situation de handicap. Si vous avez des besoins spécifiques, veuillez me contacter afin d'en discuter.

Délais d’accès

Me contacter afin de connaître la date de la prochaine session.

4 jours (28 heures)
1800,00 

Cette formation vous intéresse ?

Laissez-moi vos coordonnées et je prendrai contact avec vous pour en discuter plus longement.

    Modalité souhaitée