Prochaines dates
Modalités d’accès :
- en Inter – compter 4 semaines de délai
- en Intra – compter 8 semaines de délai (nous consulter)
Nous revenons vers vous dans un délai de 24h – Inscrivez-vous vite
Objectifs
- Assimiler l’état d’esprit du langage et maîtriser sa syntaxe
- Connaître les différentes structures de données
- Connaître les fonctions et modules intégrés au langage
- Écrire des scripts Python
- Organiser et découper son code
- Contrôler le flux d’exécution, gérer les erreurs
- Maîtriser la programmation orientée objet
- Gérer plusieurs projets et leurs dépendances
- Déboguer et tester votre code
- Évaluer la qualité de votre code
Public
Développeur, ingénieur, data analysts/engineers
Prérequis
Connaissances générales en développement
Méthodes pédagogiques
50% théorie / 50% pratique
Description
Python est le langage de programmation le plus utilisé pour l’enseignement dans les universités. Il se distingue d’autres langages par la facilité avec laquelle on peut l’apprendre car il est proche du langage humain. Néanmoins, comprendre sa philosophie comme ses concepts clés reste nécessaire pour l’exploiter pleinement.
À l’issue de cette formation, vous maîtriserez les fondamentaux du langage. Vous saurez le mettre en œuvre grâce à l’aisance acquise dans un environnement de développement professionnel. Cette aisance vous permettra d’écrire des scripts et des applications dans les règles de l’art mais aussi de les tester et les déboguer efficacement.
Programme
- Introduction
- Pourquoi utiliser Python ?
- Évolution du langage, historique et versions
- Le code Python comparé à d’autres langages (syntaxe)
- L’interpréteur Python
- PyCharm : votre Environnement de Développement Intégré (EDI)
- Jupyter notebooks
- Ressources en ligne
- La pratique lors de cette formation : autour d’un unique projet
- Variables et types de base
- Note : tout est objet dans Python
- Les types : tour de table
- Stocker des valeurs dans des variables
- Qu’est vraiment une variable ?
- Les règles de nommage
- Les mots-clés réservés
- Introduction aux booléens
- Les types numériques et opérateurs arithmétiques
- Les chaînes de caractères
- Introduction aux exceptions
- Les structures de données
- Retour sur les chaînes de caractères
- Les itérables
- Les dictionnaires
- Les ensembles
- Digression : unpacking
- Les autres types courants
- Le mot-clé None
- Les fichiers : lecture et écriture
- Les file-like objects
- Le module pathlib
- Le module datetimeContrôle de l’exécution
- Complément sur les booléens
- Les opérateurs logiques et de comparaison et leurs opérandes
- Le conditionnel avec if/elif/else
- If/else comme opérateur ternaire
- Le commutateur
- Les boucles while et for
- La fonction range
- pass et ellipsis
- Continuer ou arrêter l’itération en cours avec continue et break
- La lecture/écriture de fichiers
- Compléments sur les exceptions
- Les fonctions
- Objectifs des fonctions
- Le retour d’une fonction
- Structure des fonctions et éléments de langage
- Les différents types de paramètres, les valeurs par défaut
- Unpacking des paramètres avec * et **
- Utiliser une fonction : appel, stockage, référence
- Documenter vos fonctions : les commentaires
- Les lambda functions
- La Programmation Orientée Objet
- Objectifs : encapsulation, comportement
- Structure des classes et éléments de langage
- Utiliser une classe : l’instanciation
- Limiter l’accès aux attributs et méthodes
- L’héritage, le mixage
- Les méthodes magiques
- Schématiser vos classes et leurs liens : UML
- Les méthodes de classe
- Les méthodes statiques
- Tout est objet dans Python
- Python, un jouet avec piles incluses (Batteries Included)
- Les built-in functions
- Les modules de la librairie standard
- Affichage et chaînes de caractères
- Écrire vos propres modules
- Gérer vos modules dans des packages
- La qualité au cœur de vos développements
- Qu’est-ce qu’un code de qualité ?
- Recommandations autour du style du code
- Comment évaluer la qualité ?
- Tester votre code (unittest, pytest)
- Connaître la couverture des tests
- Déboguer votre code rapidement
- Mesurer les temps d’exécution (profiling)
Evaluation
Le formateur évalue la progression pédagogique du participant tout au long de la formation au moyen de quizz, mises en situation, travaux pratiques…
Avant la formation, un questionnaire de positionnement est envoyé aux participants afin de mieux comprendre les besoins, les attentes et le niveau de connaissances des participants.
En fin de formation, il est également demandé aux participants de mesurer leur satisfaction vis-à-vis de de la formation suivie.
Néosoft Training dispose d’un processus qualité qui prend en considération les éventuels dysfonctionnements rencontrés par les participants afin d’être proactif quant à la solution corrective adaptée tant sur le contenu de la formation elle-même que les conditions de son déroulement.