Description
Ce programme de formation en Python s'adresse aux développeurs souhaitant approfondir leurs compétences en exploitant les fonctionnalités avancées du langage. Il couvre l'historique de Python, les environnements de développement et les techniques avancées telles que la gestion des exceptions, la programmation orientée objet et l'optimisation des performances. Les participants apprendront également à utiliser des librairies pour le traitement de données, le calcul scientifique, ainsi que des frameworks pour le machine learning et le développement web. Cette formation est idéale pour ceux qui cherchent à maîtriser Python pour des applications complexes
Objectifs
- Utiliser les techniques avancées du langage Python : Context Manager, métaclasses, closures, fonctions avancées Optimiser les performances de vos programmes à l'aide du monitoring et du parallélismePackager et déployer ses artefacts PythonExploiter des librairies contribuant au succès du langage : calcul scientifique, Intelligence Artificielle, XML, réseau
Récapitulatif
Certification (optionnel)
Test adaptatif de 30 à 35 questions (la difficulté des questions évolue en fonction de vos réponses précédentes). Durée : 1h00. Questions à choix multiples et manipulations
Formation éligible CPF (certificateur Isograd)
Code RS ou RNCP : RS6962
Intitulé de la certification : Programmer et automatiser des tâches avec Python (Tosa)
Date enregistrement : 18-12-2024. Validité : 18-12-2027
Public
Ingénieurs et développeurs
Prérequis
Niveau : Disposer de bonnes connaissances en développement Python
Techniques (formations en classe virtuelle) : Vous devez disposer d'un ordinateur connecté à internet, d'un micro et d'une caméra
Méthodes et modalités pédagogiques
Formation réalisée en Présentiel, Distanciel ou Dual-Learning selon la formule retenue.
Moyens et supports pédagogiques
Mise à disposition d'un poste de travail sur nos formations en Présentiel.
Mise à disposition de nos environnements de visio sur nos formations en Distanciel
Remise d'une documentation pédagogique numérique pendant la formation
La formation est constituée d'apports théoriques, d'exercices pratiques et de réflexions
Dans le cas d'une formation sur site Entreprise, le client s'engage à avoir toutes les ressources pédagogiques nécessaires (salle, équipements, accès internet, TV ou Paperboard...) au bon déroulement de l'action de formation conformément aux prérequis indiqués dans le programme de formation
Modalités de suivi et d'évaluations
Auto-positionnement des stagiaires avant la formation
Émargement des stagiaires et formateur par 1/2 journée
Exercices de mise en pratique ou quiz de connaissances tout au long de la formation permettant de mesurer la progression des stagiaires
Auto-évaluation des acquis de la formation par les stagiaires
Questionnaire de satisfaction à chaud et à froid à l'issue de la formation
Programme détaillé
Exploiter des librairies contribuant au succès du langage
- Historique de python
- Panorama des solutions Python
- Environnements de développement
Utiliser les techniques avancées du langage Python (1/3)
- Gestion avancée des paramètres de fonctions
- Collections simples et avancées
- Itérateurs et générateurs avancés
- Expression for, list et dict comprehension
- Map/reduce et évaluation paresseuse
Utiliser les techniques avancées du langage Python (2/3)
- Gestion et définitions des exceptions
- Utilisation d'un context manager
- Méthodes asynchrones
- Typage avec les hints
Utiliser les techniques avancées du langage Python (3/3)
- Programmation orientée objets avancée
- Les propriétés
- Implémentation d'opérateur, builtin fonction ou context manager
- Héritage multiple et algorithme MRO
- Les décorateurs
- Variable et méthode de classe
- Classes abstraites et interfaces
- Métaclasses
- Introspection
Optimiser les performances de vos programmes à l'aide du monitoring et du parallélisme
- Programmation parallèle et concurrente
- Multi threading
- Multi process
- Pool de threads ou process
- Objets futurs
- Synchronisation
- Paradigme de la concurrence
Packager et déployer ses artefacts Python
- Installer des librairies tierces
- Établir la liste de dépendances de son projet
- Packager ses librairies
- Environnement virtuel
- Profiler son code
- Tests unitaires
Exploiter des librairies contribuant au succès du langage (1/5)
- XML et WEB SCRAPING
- Packages xml, lxml, Beautiful Soup
- Lire un document XML ou HTML
- Valider un document XML avec un schema XSD
- Chemins XPath et sélecteurs CSS
- Transformation python ou XSL
- Enregistrement
Exploiter des librairies contribuant au succès du langage (2/5)
- Calcul scientifique avec NUMPY ET SCIPY
- Les types numériques
- Les tableaux à N dimensions
- Les statistiques
- Graphiques avec Matplotlib
Exploiter des librairies contribuant au succès du langage (3/5)
- Taitement des données avec Pandas
- Les Dataframes
- Import/export des données
- Nettoyer, filtrer, transformer les données
- Combiner les données
- Grouper pour faire des statistiques
Exploiter des librairies contribuant au succès du langage (4/5)
Frameworks de machine learning
- TensorFlow, Keras et ScikitLearn
- Réseau de neurones
- Régressions
- Apprentissage
- Prédiction
Exploiter des librairies contribuant au succès du langage (5/5)
Frameworks web/REST et ORM
- Django, Flask et Fast Api
- ORM SQL Alchemy
- API Rest Rest
- Routage et méthodes HTTP
- DTO typé pour valider les données
- Conversion JSON