Formation Python, perfectionnement

Public admis

  • Salarié en Poste
  • Demandeur d'emploi
  • Entreprise
  • Etudiant

Financements

Eligible CPF Votre OPCO Financement personnel

Objectifs de la formation

Concrètement, à l'issue de cette formation Python Développement Avancé, vous saurez :

  • Optimiser vos programmes grâce au multi-threading et à la supervision (monitoring)
  • Connaître les manipulations avancées en Python : Context Manager, métaclasses, injection et introspection du code…
  • Maîtriser la manipulation des données
  • Connaître et savoir exploiter à un premier niveau les bibliothèques qui font (ou on fait) le succès de Python (Mathématiques, Scientifique, IA, Machine Learning, Réseau)

PLB CONSULTANT


Informatique et Management
Voir la fiche entreprise

Tarif

A partir de 2 440,00 €

Durée 4 jours (28h)
Modes
  • Centre
  • Entreprise
  • Distance
Sessions
Lieux Partout en France

PLB CONSULTANT


Informatique et Management
Voir la fiche

Tarif

A partir de 2 440,00 €

Durée 4 jours (28h)
Modes
  • Centre
  • Entreprise
  • Distance
Sessions
Lieux Partout en France

Description

Cette formation Python Développement Avancé vous apprend à maîtriser les techniques avancées de programmation en Python que vos applications soient exigeantes (parallélisme, calcul scientifique, …) ou simplement soucieuses de profiter des possibilités de Python pour proposer des applications bien écrites et faciles à maintenir dans les projets professionnels. 

Le succès grandissant de Python s’explique en partie par la richesse de ses bibliothèques et notamment dans les domaines en expansion actuellement comme l’analyse de données, le calcul scientifique, ou encore le machine learning. Nous vous présentons ces bibliothèques (anciennes et récentes) qui ont contribué au succès de Python (NumPy, Pandas, Matplotlib, Ipython, SciPy, MapReduce, PySpark, PySNMP, …) à travers des exemples qui traduisent tout leur potentiel et qui vous feront gagner du temps pour une première utilisation.

Programme

J1

Rappels importants sur le langage et compléments

Le typage fort en Python
Schéma de fonctionnement de la mémoire d’un programme Python (variables locales, passage par valeur/référence, variables non mutable, etc.)
Rappels sur les différences entre tableaux, listes, dictionnaires, slices, etc.
Les fonctions anonymes (lambda)
Syntaxe d’appels étendus (*args, **kwargs)
Intérêts de déterminer le type d’un objet, d’une méthode, ou d’un module (introspection)
Exemple de synthèse sur les concepts objets en Python (classes, propriétés, méthodes, instances)
Exemple de synthèse sur la syntaxe du langage (variables, boucles, tests, exceptions, …)
Travaux pratiquesObjectif : Valider que les concepts et la syntaxe de Python sont maîtrisés 
Description : Quiz ludique (bêtisier des erreurs classiques en Python). Écriture d’une fonction qui extrait une sous liste à partir d’une liste selon une fonction de critères passée en argument. Écriture d’une fonction qui « nettoie » un tableau passé en argument selon un dictionnaire de symboles « interdits » et présents dans un fichier texte.

Packager et déployer votre code Python

En quoi consiste le packaging de code ?
Projet vs bibliothèque  
Comment décrire le module packagé (setup.py) ?
Le Python Package Index (PyPI, Métadonnées).
Les outils pour packager ses librairies (disutils, setuptools)
Installer des librairies tierces (pip, easy_install).
Isoler les environnements de différents projets (virtualenv)
Gérer un projet avec pipenv
Créer un wheel distribuable avec setup.cfg
Compiler le code Python en un exécutable avec nuitka
Travaux pratiquesObjectif : Valider que l’environnement de développement est maîtrisé ainsi que le packaging de ses applications
Description : Création d‘un environnement virtuel (virtualenv) pour tester l’installation de modules de versions différentes sur des versions différentes de Python (plusieurs projets sur une même machine sans interférence). Packaging de l’une de nos propres librairies et installation dans l’environnement virtualisé des autres participants.
J2

Manipulations avancées des primitives en Python

Générer du code à la volée : factories puis métaclasses
Décorateurs à plusieurs niveaux
Context manager et décorateur à la fois
Au delà de yield : la méthode send() des générateurs
Monkey paching et autres injections de code
Introspection du code
Travaux pratiquesObjectif : Savoir mettre en œuvre l’introspection et les factories
Description : Mise en œuvre de l’introspection (appel de fonction avec arguments dans le « désordre »)
Utilisation d’une classe différente selon le processus de connexion (login/password ou annuaire par exemple) avec les usines de classe (Factories)

Performances et parallélisation

Programmation non blocante avec les threads
Le GIL et les limites des threads
Exploiter plusieurs coeurs avec le multiprocessing
I/O asynchrone avec asyncio
Les outils pour lire l’activité (Timeit, cProfile)
Calcul distribué avec la librairie Celery
Les faiblesses du multithreading
Travaux pratiquesObjectifs : Savoir manipuler les threads en Python pour gagner en performances
Description : Mise en œuvre de l’algorithme Map Reduce avec Celery. Observations des appels et du temps passé dans les différentes fonctions pour diagnostiquer où se situe le goulot d’étranglement.
J3

Manipulations avancées des données

Rappels sur les formats de données structurées : CSV, flux XML et JSON
Manipulation des données issues de ces fichiers par des structures Python adaptées
Le parseur XML ElementTree
Fonctions d‘accès et de download de données en ligne
A quoi sert un ORM (Object-relational Mapper) ?
Synchronisation des objets Python avec une base SQL (ORM sqlAlchemy)
Principes des API et des Web Services
Consommation des API et des Web Services en Python
Travaux pratiquesObjectif : Savoir manipuler des flux XML ou JSON 
Description : Capture de séries financières (indices de marché et cours de bourse) à partir d'un fichier CSV représentant des données issues de data.gouv.fr, on extrait une statistique (décrite en XML) et on l’affiche dans un bar graphe (utilisation de la libraire PySpark). Cet atelier permet d’appréhender la puissance du moteur Spark combiné à la simplicité de Python pour l’analyse de données.

La représentation graphique de données en Python

Introduction aux bases de la visualisation de données
Focalisation sur la génération de graphes grâce à la librairie Matplotlib : démonstration de l’application de graphes Matplotlib à la visualisation de problèmes concrets
Travaux pratiquesObjectif : Savoir utiliser la bibliothèque MatplotLib
Description : Poursuite de l’atelier précédent en générant des visualisations graphiques illustrant les analyses de données réalisées
J4

Présentation des grandes librairies Python

En quoi consiste l’analyse de données ?
Introduction au concept de Dataframe
Manipuler et analyser les données avec Pandas
Analyser les données avec NumPy et SciPy
Fonctions de manipulation et de calcul matriciel (Numpy)
Fonctions de Statistiques Descriptives (SciPy)
Fonctions de comparaison de populations, mesures d’association, etc. (SciPy)
Fonctions de classification automatique (SciPy) : k-means
Introduction aux concepts et au vocabulaire de l’IA (apprentissage supervisé/non supervisé)
Intelligence Artificielle et algorithmes d'apprentissage avec Scikit-Learn
Tracer et visualiser les données avec Matplotlib
Créer un serveur internet WEB, FTP, etc. avec Twisted (aperçu)
Dialoguer avec tout matériel compatible SNMP avec PySNMP (aperçu)
Travaux pratiquesObjectifs : Comprendre le champ fonctionnel de chaque librairie et leurs dépendances ou complémentarités. Savoir mettre en œuvre NumPy et SciPy pour le calcul scientifique et l’analyse de données.
Description : Quizz sur les bibliothèques (quelles bibliothèques utiliser pour quel traitement formulé sous la forme d’un besoin métier  ?). Mise en œuvre de NumPy et SciPy dans le contexte de l’analyse financière (Collecte de données, intégration, nettoyage, calcul, analyse). Visualisation avec Matplotlib. 

Prérequis

Les participants doivent posséder de bonnes connaissances de développement en Python validées par au moins un premier projet de développement. La formation ne revient pas sur la syntaxe de base de Python et se contente d’un rappel en début de formation. Ces prérequis sont indispensables pour garantir une compréhension continue de la formation et pour participer aux travaux pratiques de façon active.

Public

Ce cours s’adresse aux développeurs déjà familiarisés avec le langage Python souhaitant parfaire ou enrichir leur connaissance de ce langage en étant pertinent dans les choix d’implémentations (structures de données, fonctions utilisées, architecture du code, etc.). Elle intéressera particulièrement toute personne cherchant à comprendre comment optimiser une application existante en Python (monitoring, parallélisme) ainsi que toute personne participant à un projet de développement en Python dans un projet scientifique, d’analyse de données, d’IA, de machine learning, ou encore de supervision réseau et qui souhaite disposer d’une vue claire sur les bibliothèques disponibles et la mise en œuvre des standards.

Ces formations pourraient vous intéresser

Objectifs de la formation

À l'issue de cette formation Big Data Développement, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Connaître les spécificités du Big Data
  • Savoir mettre en œuvre les technologies relatives au Big Data
  • Comprendre et exploiter le Machine Learning
  • Pouvoir tirer partie de la visualisation des données
Tarif

A partir de 2 390,00 €

Durée

4j / 28h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Décrire l’enjeu des tests dans le processus de développement logiciel ;
  • Identifier les différentes catégories de test et connaitre leurs rôles ;
  • Mettre en place des tests unitaires en Python en utilisant la librairie unittest ;
  • Utiliser des objets Mocks dans les tests unitaires ;
  • Mettre en place des tests d’intégration en Python ;
  • Développer des tests d’intégration pour les fonctionnalités Web des application.
Tarif

Contacter l'organisme

Durée

2j / 14h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Pendant la formation, le formateur évalue la progression pédagogique des participants via des QCM, des mises en situation et des travaux pratiques. Les participants passent un test de positionnement avant et après la formation pour valider leurs compétences acquises.
Tarif

Contacter l'organisme

Durée

5 jours (35 heures)

Modes
  • Entreprise
  • Distance
  • Centre

Objectifs de la formation

À l'issue de cette formation Projet Data/IA vous aurez acquis les connaissances et les compétences nécessaires pour :

  • Repérer les potentiels d’utilisation de la donnée au sein de votre organisation
  • Repérer votre patrimoine data (interne et externe) et ses limites
  • Challenger les attendus d’un projet d’analyse prédictive : la question est elle bien posée ? sait on décrire l’usage qui sera fait des résultats ? Y a-t-il une vocation à industrialiser ou s’agit-il de diagnostiquer un comportement ?
  • Anticiper les biais inhérents à tout projet data : les détecter, les évaluer : peut-on les corriger ? sinon sont-ils assumés ?
  • Sécuriser le respect des règles du RGPD
  • Piloter le gain économique du projet au-delà des métriques spécifiques à l’IA
  • Comprendre les infrastructures sous-jacentes aux projets d’IA (Big Data)
  • Comprendre l’écosystème d’outils mobilisés : Python / scikit learn / Tensorflow / …
  • Identifier les approches analytiques pertinentes (supervisé, non supervisé, principaux modèles)
  • Rythmer et piloter le projet au sein des équipes techniques (méthodes agiles, devops, ML Ops)
  • Comprendre les enjeux et ressources de la datavisualisation
  • Arbitrer la poursuite ou l’arrêt du projet, sauvegarder les acquis
Tarif

A partir de 1 995,00 €

Durée

3j / 21h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

Concrètement, à l'issue de cette formation Python Bonnes pratiques et Design patterns vous aurez acquis les connaissances et les compétences nécessaires pour :

  • Appliquer des design patterns et des bonnes pratiques pour développer des applications avec Python
  • Exploiter des fonctionnalités avancées de programmation Python pour concevoir des programmes fiables
  • Créer et gérer des threads de contrôle concurrents
  • Générer des requêtes et des réponses aux services Web REST et utiliser les données renvoyées
  • Suivre l'exécution du programme et améliorer les performances
  • Lancer des tests unitaires sur les programmes et les modules Python, les installer et les distribuer.
Tarif

Contacter l'organisme

Durée

4j / 28h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

À l'issue de cette formation Python Calcul Scientifique, vous aurez acquis les connaissances et les compétences nécessaires pour :

  • Calculer, estimer et inférer dans des data-set réels, bruités et de dimension importante
  • Augmenter un data-set
  • Réaliser des calculs plus précis
  • Détecter des motifs approchant dans une bibliothèque de séquences
  • Réaliser des prédictions sur des séries temporelles
  • Dépoter les calculs sur des architectures matérielles optimisées pour les calculs sans modifier le code
Tarif

A partir de 1 995,00 €

Durée

3j / 21h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Cette formation fait l'objet d'une évaluation formative.
Tarif

Contacter l'organisme

Durée

4 jours (28 heures)

Modes
  • Distance
  • Centre

Objectifs de la formation

  • Cette formation fait l'objet d'une évaluation formative.
Tarif

Contacter l'organisme

Durée

3 jours (21 heures)

Modes
  • Distance
  • Centre

Objectifs de la formation

Concrètement à l'issue de cette formation Analyse de données en Python, vous aurez acquis les connaissances et compétences nécessaires pour :

  • Maîtriser les bases du langage Python
  • Connaitre les aspects avancés en Python
  • Savoir analyser des données en Python
  • Savoir faire une représentation graphique de données en Python
  • Acquérir des données externes en Python
  • Comprendre les performances et la parallélisation
Tarif

A partir de 2 695,00 €

Durée

5j / 35h

Modes
  • Centre
  • Entreprise
  • Distance

Formation Python

Proposé par Sparks

Objectifs de la formation

  • Connaître l'intérêt de Python, son contexte
  • Connaître les différents types de données et d'opérateurs
  • Utiliser les fonctions Python
  • Installer des modules et des packages en Python
  • Utiliser Python pour la programmation orientée objet
  • Manipuler quelques concepts avancés du langage
  • Identifier les cas d'usage de Python pour le web
Tarif

A partir de 1 800,00 €

Durée

3 jours

Modes
  • Centre
  • Entreprise
  • Distance

Je cherche à faire...