Organisme de Formation aux technologies et métiers de L'informatique
python

Formation Python - Perfectionnement

Utiliser les fonctionnalités avancées de Python ainsi que les principaux outils associés au langage

Informations générales

RS250
4 jours (28h)
2 450 €HT
90 €HT TOSA Python
Financement CPF possible

Objectifs

Après ce cours, vous serez capable de :

  • Utiliser les techniques avancées du langage Python : Context Manager, métaclasses, closures, fonctions avancées
  • Optimiser les performances des programmes à l'aide du monitoring et du parallélisme
  • Packager et déployer ses artefacts Python
  • Exploiter des librairies contribuant au succès du langage : calcul scientifique, Intelligence Artificielle, XML, réseau

Public

Ce cours s'adresse avant tout aux personnes suivantes :

  • Ingénieurs
  • Développeurs

Prérequis

Pour suivre ce cours, vous devez déjà posséder les connaissances suivantes :

  • Disposer de bonnes connaissances en développement Python

Programme de la formation

Utiliser les context managers

  • Gestion des ressources en python : try ... finally, with, utilisation de with
  • Utilisation de with : gérer des fichiers, analyser des répertoires, calculer en haute précision, manipuler des verrous en multithread, tester les exceptions avec pytest
  • Résumer les avantages de with
  • Utiliser Async avec et with
  • Créer des context Managers
  • Encodage des contextes : contexte simple, exceptions, ouverture de fichiers, redirection de sorties, temps d'exécution
  • Context Manager par fonction : ouverture de fichiers version2, Temps
  • Améliorer ses APIs
  • Context manager asynchrone

Utiliser les Meta-classes

  • Modes des metas : ancien mode vs nouveau mode
  • Typage et classes
  • Définir une classe dynamiquement : exemple de base, exemples avancés
  • Créer une propre meta-classe
  • Justification de l'utilisation

Fonctions internes et closure

  • Création de fonctions internes
  • Les bases des internes : encapsulation, construction, inner contre privé
  • Conservation d'un état : méthode d'état, modifier l'état
  • Ajouter un comportement
  • Closure : attacher code et données, où trouver des closures, comment les utiliser au mieux

Concurrence et parallélisme

  • Exemples
  • Accélérer un programme pour entrées/sorties : IO Synchrone, IO avec Thread, IO asynchrone
  • Accélérer un programme pour CPU : CPU Synchrone, CPU avec Thread, CPU asynchrone

Monitoring

  • Outils internes pré-installés
  • Fonctions de timer
  • Exemples de mise en oeuvre
  • Outils et plates-formes externes : Datadog, Dynatrace, Manage engine

Freezing, packaging

  • Différences entre les modes
  • Avantages
  • Outils de freezing : Windows, OSX, Linux
  • Packaging : choisir un nom, structuration
  • Publication sur PyPi
  • Package complet : ajouter et ignorer des fichiers, dépendances du package, description meta du package, tests, ressources complémentaires
  • Scripting de package
  • Assemblage final

Les Frameworks spécialisés

  • XML : Standards (DOM, SAX, StAX), librairies en python, modules externes (untangle, xmltodiict, lxml, BS), conversion et Binding (XPath, génération de modèles objet), sécurisation de parsers
  • IA & ML : Tensorflos, Seaborn, Numpy, Pandas, Jeras, Theano, PyTorch, Scikit-learn
  • Sciences : Numpy, Pandas, SciPy, Matplotib
  • Web : Django, Flask, Bottle, CherryPy, Falcon
  • Autres frameworks métiers : Bio, Astronomie, OLAP, Finance, Géologie,...
plus d'infos

Méthode pédagogique

Chaque participant travaille sur un poste informatique qui lui est dédié. Un support de cours lui est remis soit en début soit en fin de cours. La théorie est complétée par des cas pratiques ou exercices corrigés et discutés avec le formateur. Le formateur projette une présentation pour animer la formation et reste disponible pour répondre à toutes les questions.

Méthode d'évaluation

Tout au long de la formation, les exercices et mises en situation permettent de valider et contrôler les acquis du stagiaire. En fin de formation, le stagiaire complète un QCM d'auto-évaluation.

Certification

Cette formation prépare au passage de la certification suivante et peut être financée par votre crédit CPF.
N'hésitez pas à nous contacter pour toute information complémentaire.

TOSA Python (90 €HT)

L'examen TOSA se passe en centre agréé ou en ligne. Votre score (sur 1000) vous permettra de communiquer sur votre niveau de connaissances du langage.

  • Durée : 1h30
  • 35 questions QCM et cas pratiques
  • Score minimum : 551
  • Date d'enregistrement de la certification : 14/12/2022

Suivre cette formation à distance

  • Un ordinateur avec webcam, micro, haut-parleur et un navigateur (de préférence Chrome ou Firefox). Un casque n'est pas nécessaire suivant l'environnement.
  • Une connexion Internet de type ADSL ou supérieure. Attention, une connexion Internet ne permettant pas, par exemple, de recevoir la télévision par Internet, ne sera pas suffisante, cela engendrera des déconnexions intempestives du stagiaire et dérangera toute la classe.
  • Privilégier une connexion filaire plutôt que le Wifi.
  • Avoir accès au poste depuis lequel vous suivrez le cours à distance au moins 2 jours avant la formation pour effectuer les tests de connexion préalables.
  • Votre numéro de téléphone portable (pour l'envoi du mot de passe d'accès aux supports de cours et pour une messagerie instantanée autre que celle intégrée à la classe virtuelle).
  • Selon la formation, une configuration spécifique de votre machine peut être attendue, merci de nous contacter.
  • Pour les formations incluant le passage d'une certification la dernière journée, un voucher vous est fourni pour passer l'examen en ligne.
  • Pour les formations logiciel (Adobe, Microsoft Office...), il est nécessaire d'avoir le logiciel installé sur votre machine, nous ne fournissons pas de licence ou de version test.
  • Horaires identiques au présentiel.

Mis à jour le 08/11/2023