Aller au contenu principal

Python - avancé

Date de mise à jour :
Identifiant Offre Info : 14_AF_0000049708
Organisme responsable : Data Value (ouvre dans un nouvel onglet)

Nouvelle recherche

Présentation de la formation

Objectifs

Maîtriser les concepts avancés de Python, notamment la programmation orientée objet, l'écriture de packages, la qualité logicielle et l'optimisation des performances Compétences visées - Maîtriser la programmation orientée objet en Python, y compris les types, les classes et la gestion des exceptions pour aborder des concepts avancés comme la méta-programmation. - Développer et structurer des packages Python en respectant les meilleures pratiques avec la gestion de…

Maîtriser les concepts avancés de Python, notamment la programmation orientée objet, l'écriture de packages, la qualité logicielle et l'optimisation des performances

Compétences visées
- Maîtriser la programmation orientée objet en Python, y compris les types, les classes et la gestion des exceptions pour aborder des concepts avancés comme la méta-programmation.
- Développer et structurer des packages Python en respectant les meilleures pratiques avec la gestion de l'installation et de la distribution.
- Garantir la qualité du code Python en respectant les normes de codage, en écrivant des tests unitaires et en utilisant des outils d'analyse pour améliorer la couverture de test et l'optimisation des performances.
- Optimiser les performances des scripts Python, en utilisant des techniques de réduction de complexité, de multithreading et d'analyse de la mémoire.
- Créer des extensions Python en les interfaçant avec des langages comme C ou C++.

Programme de la formation

Programme - Rappels de Programmation Orientée Objet Types de base Création de classes Héritage, Polymorphisme... Traitement des Exceptions raise, try, except, finally Le "Data-Model" et les fonctions "magiques" Importations "avancées" - utilisation de . et .. - Syntaxe avancée Listes en "compréhension" Itérateurs et générateurs Modules itertools, collections Lambda fonctions Décorateurs Instructions with et Contextlib…

Programme
- Rappels de Programmation Orientée Objet
  • Types de base
  • Création de classes
    • Héritage, Polymorphisme...
  • Traitement des Exceptions
    • raise, try, except, finally
  • Le "Data-Model" et les fonctions "magiques"
  • Importations "avancées" - utilisation de . et ..

- Syntaxe avancée
  • Listes en "compréhension"
  • Itérateurs et générateurs
  • Modules itertools, collections
  • Lambda fonctions
  • Décorateurs
  • Instructions with et Contextlib
  • Instruction yield
  • Programmation asynchrone
  • Coroutines

- Classes avancées
  • Sous-classer les types de base
  • Résolution des héritages multiples
  • Cas de la méthode "super"
  • Descripteurs __get__ et __set__
  • Propriétés (properties)
  • dict__ et __slots__
  • Classes abstraites
  • Méta-programmation

- Introduction à l'écriture de packages
  • "Meilleures pratiques"
  • setup.py et scripts de contrôle
  • L'utilitaire pip
  • Installer un package
  • Désinstaller un package
  • Enregistrer et uploader un package

- Qualité logicielle
  • Annotations
  • Respect de la PEP 8 - normes de codage
  • Tests unitaires (doctest et unittest)
  • Taux de couverture - coverage

- Solutions d'optimisation
  • Réduction de la complexité
  • Bytecode et le module "dis"
  • Multithreading
  • Multiprocessing
  • Gestion des caches
  • Profiling
  • Analyse de l'occupation mémoire

- Interfaçage avec C / C++
  • Objectif et principe
  • SWIG
  • Cython
  • Le module ctypes

Validation et sanction

Attestation de formation

Type de formation

Non certifiante

Niveau de sortie

Sans niveau spécifique

Durée, rythme, financement

Durée

En centre

21 h

Financement

Conventionnement
Oui

Conditions d'accès

Public visé

  • Tout public

Niveau d'entrée

Sans niveau spécifique

Conditions spécifiques et prérequis

Pour suivre ce stage dans de bonnes conditions, il est recommandé d'avoir suivi en amont la formation Python - Bases et introduction aux librairies scientifiques.

Lieu de réalisation de l'action

Modalités d'enseignement

Formation entièrement en présentielle

Adresse

54 Rue du Faubourg Saint-Antoine
75012 Paris 12e

Responsable : A&O Expertise

Périodes prévisibles de déroulement des sessions

Début

Fin

Adresse d'inscription
Data Value
31670 Labège
État du recrutement
Ouvert
Modalités
Entrées / Sorties à dates fixes