Formation Programmation Python

Apprenez à programmer en Python et développez des applications complètes, du script aux interfaces graphiques modernes.

Formation Programmation Python

Description

Cette formation Programmation Python vous permettra d’acquérir des bases solides pour écrire des programmes Python clairs, modulaires et maintenables.

Pendant 5 jours, vous apprendrez à :

  • Développer vos premiers programmes Python capables de manipuler efficacement des données et automatiser des traitements
  • Structurer des applications Python claires et maintenables grâce aux fonctions, modules et packages
  • Concevoir des applications modulaires en appliquant les principes de la programmation orientée objet
  • Créer des outils Python utiles au quotidien pour manipuler des fichiers, traiter des données ou interagir avec le système
  • Produire un code Python plus fiable en apprenant à tester, déboguer et améliorer sa qualité
  • Développer une application Python complète avec une interface graphique moderne

Public

Cette formation s’adresse aux développeur·se·s, ingénieur·e·s ou profils techniques souhaitant apprendre Python pour automatiser des tâches, manipuler des données ou développer des applications.

Campus Atlas

Cette formation est éligible au dispositif Campus Atlas. Il permet aux entreprises relevant de l'OPCO Atlas de suivre des formations sélectionnées à tarifs négociés, avec une prise en charge pouvant aller jusqu'à 100% selon votre branche et votre situation. Ce dispositif s'adresse aux entreprises cotisantes/adhérentes à Atlas et à leurs salarié·e·s.
Voir la page Campus Atlas de la formation

Les objectifs

  • Écrire des programmes Python en utilisant les structures de données et structures de contrôle du langage
  • Structurer un projet Python avec modules, packages et environnements virtuels
  • Concevoir des applications modulaires avec la programmation orientée objet
  • Utiliser les bibliothèques standard Python pour manipuler fichiers, processus et données
  • Tester, déboguer et améliorer la qualité d’un programme Python
  • Développer une application Python complète avec interface graphique

Pré-requis

  • Être à l’aise avec l’utilisation d’un ordinateur
  • Comprendre les concepts de base de la programmation (variables, conditions, boucles) est recommandé
  • Ordinateur portable à apporter

Le programme de la formation Programmation Python

Jour 1 : Premiers pas avec Python

  • Les types de données
    • Chaînes de caractères
    • nombres
    • n-uplets
    • listes
    • dictionnaires
    • ensembles
    • booléens et valeurs de vérité
    • introspection (type, isinstance, dir,help)
    • particularités du langage Python
      • objets muables et immuables (ce qu'il faut savoir)
  • Les structures de contrôle et les mots clefs
    • Les boucles for et while, les mots clefs break, continue et l'énumération
    • Les tests if, elif, else, et la structure match
    • Les fonctions, paramètres, la portée des variables
    • La notation en compréhension
    • Les exceptions : try, except, finally et raise

Mise en pratique :

  • Calculs et statistiques sur des jeux de données sous forme de listes et dictionnaires

Jour 2 : Structurer son code

  • Concepts de la programmation orientée objet
    • Problèmes résolus par la P.O.O
    • Rendre le code modulaire avec les classes, objets, méthodes, et attributs
    • Réutiliser du code grâce à l'objet self, l'héritage, et les méthodes magiques
  • Structurer et tester un programme orienté objet
    • Apprendre les concepts de packages et modules Python pour augmenter la modularité
    • Diviser son code en fichiers multiples avec les méthodes d'import relatif et absolu
    • Écrire des tests unitaires de classes afin d'augmenter la qualité
  • Outils avancés de la programmation orientée objet en Python
    • Comprendre l'encapsulation des données grâce à la portée des attributs et des méthodes
    • Appréhender les propriétés getter, setter et deleter pour obtenir un meilleur contrôle de l'utilisation des données
    • Offrir une flexibilité et une organisation claire du code en utilisant les attributs de classe, statiques et les décorateurs

Mise en pratique :

  • Implémentation et instanciation de classes avec héritage pour réaliser un simulateur
  • Structuration et test des classes réalisées précédemment, sous forme de package Python
  • Choix et implémentation d'outils avancés de P.O.O sur notre package orienté objet

Jour 3 : Structurer son code

  • Les paquets Python et leur environnement
    • Comprendre sys.path, les modules et les paquets
    • Les environnements virtuels
    • Installer un module tiers avec pip
  • Programmation orientée objet
    • Les concepts de la programmation orientée objet
    • Attributs de classe et d'instance
    • Les méthodes spéciales (constructeur, destructeur, méthodes magiques, …)
    • L'héritage et la redéfinition de méthodes

Mise en pratique :

  • Création d'un mini projet implémenté avec des classes et objets Python

Jour 4 : Bonnes pratiques avec Python

  • Les librairies communes
    • Récupérer les paramètres passés à un script : argparse
    • Les expressions régulières : re
    • La gestion de fichiers et le module csv
    • Exécuter des scripts système depuis Python : subprocess
    • Gérer les chemins de fichiers et dossiers : pathlib
  • Consolider son code
    • Les annotations de type,
    • Les assertions,
    • Le débogueur en ligne de commande avec pdb
    • Les tests unitaires avec pytest et tox
    • La mesure des performances
    • La PEP 8 et les outils de qualité de code
    • Gérer les encodages, UTF-8 et Unicode

Mise en pratique :

  • Création de programmes interactifs en ligne de commande, client/serveur Web ou e-mail
  • Renforcement de la robustesse du code opérant sur les jeux de données et développement des tests unitaires

Jour 5 : Interfaces graphiques modernes avec Flet

  • Présentation de Flet
    • philosophie
    • usages
    • installation
    • composants de base
  • Structure d'une application Flet
    • main()
    • Page
    • gestion des états
  • Composants graphiques courants
    • Text, TextField, Button, Column, Row et Container
  • Interactions utilisateur
    • gestion des événements (clic, changement de texte)
  • Organisation du code avec des classes Python
    • découpage logique/visuel (pattern MVC simplifié)
  • Utilisation des thèmes et mise en page responsive
  • Connexion à un backend orienté objet

Mise en pratique :

  • Création d’une application de gestion de tâches avec interface moderne (ajout, suppression, filtres dynamiques)

Télécharger le programme

Formateurs

Guillaume CHEVROT

Guillaume a travaillé en tant que chercheur au sein de différents organismes de recherche (CEA, CNRS, Université du Danemark du Sud, Université d'Orléans) dans le domaine de la simulation numérique et de l'analyse de données.

Au cours de ces expériences, Guillaume a développé une expertise en programmation et calcul numérique avec le langage Python. Il a appliqué cette expertise à de nombreux cas d'étude de la biologie ou de la chimie (exemples : étude d’une protéine membranaire, comportement de nanoparticlues de carbone sous haute pression et température élevée).

Aujourd'hui, via sa société de conseil NUMGRADE, il effectue des missions en qualité de consultant et de formateur pour de nombreuses entreprises et organisations du monde de la recherche et de l'enseignement.

Julien PALARD

Julien Palard est un consultant expert Python passionné et pédagogue, investi dans de nombreux projets de logiciels libres (tels que sphinx-lint, pipe ou logtop).

En parallèle de ses activités professionnelles, Julien est également actif en tant que formateur et mentor, partageant généreusement ses connaissances et son expérience avec la communauté. Il cumule plus de 1350 heures de formation.

Passionné par la promotion du logiciel libre et de l'open source, Julien a :
* coordonné la traduction de Python en français,
* co-créé le projet d'enseignement libre et open-source hackinscience.org,
* été le mainteneur de plusieurs projets Python et C.

En dehors de son engagement professionnel et de ses projets open-source, Julien s'est également impliqué dans la communauté en tant que co-organisateur de la PyConFR depuis 2019 et en tant que membre du comité directeur de l'Association Francophone Python (AFPy) de 2020 à 2022.

Yves DUPRAT

Yves est développeur Python freelance depuis 15 ans. Son activité professionnelle Python se répartit à part égale, entre du développement et de la transmission de savoir aussi bien en écoles d'ingénieur qu'en formation auprès des entreprises. Il intervient aussi sur des sessions de formation en C, C++ et SQL.

Ses principales missions Python en développement concernent soit de l'écriture de script backoffice, soit des missions d'audit en vue de refactoring et/ou d'optimisation de code.

Yves est aussi créateur et organisateur du meetup Python de Lille (Lille.py)

Yoan MOLLARD

Yoan réalise du conseil en systèmes d'information autour de l'écosystème Python, sur de nombreux domaines métiers allant du web à la mécatronique.

Etienne SANCHEZ

Data scientist depuis 8 ans, Etienne travaille principalement avec les langages R et python. Il délivre son expertise à des clients variés, allant de la PME au grand groupe.

Auparavant professeur dans le secondaire, il a gardé un goût certain pour l'enseignement, et donne régulièrement des formations en école et en entreprise.

FAQ

Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié Qualiopi, ce qui permet la prise en charge par des organismes comme Pôle emploi, votre OPCO ou encore le CPF (Compte Personnel de Formation) pour certaines formations.

Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?

Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.

Voici une journée type :

  • 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
  • 9h30 : la formation commence
  • 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
  • 14h : reprise de la formation
  • 18h : fin de la journée

8 raisons de participer à une formation Human Coders

  • Satisfaction client élevée : Un taux de statisfaction de 4,6/5 depuis 2012 (sur 1811 sessions réalisées). 99% des participants se disent satisfaits de nos formations
  • Approche pédagogique unique : Des formations en petit groupe, des formateurs passionnés et expérimentés, de véritables workshops... (Plus d'infos sur notre manifeste)
  • Catalogue de formations complet : 224 formations au catalogue, de quoi vous accompagner sur tout vos projets
  • Écosystème dynamique : Nous accompagnons les dev depuis 14 ans avec des initiatives comme Human Coders News, les Human Talks, le podcast ou encore notre serveur Discord
  • Financement facilité : Organisme certifié Qualiopi, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • Références clients prestigieuses : De nombreux clients qui nous font confiance depuis des années
  • Accompagnement sur mesure : Nous vous proposons un accompagnement personnalisé par nos consultants pour vous aider dans vos projets au-delà de la formation
  • Valorisation professionnelle : Remise d'un diplôme, d'une attestation et d'une certification, suivant les formations effectuées, que vous pourrez afficher sur vos CV et réseaux sociaux

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012