Formation Python, programmation objet

Public admis

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

Financements

Eligible CPF Votre OPCO Financement personnel

Objectifs de la formation

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

  • Connaître les fondamentaux de la programmation objet en Python
  • Maîtriser la syntaxe du langage Python
  • Connaître et mettre en œuvre les modules Python
  • Manipuler les données en Python
  • Concevoir des interfaces graphiques en Python
  • Disposer d’une première expérience dans l’utilisation des outils de test et d'évaluation d'un programme Python

PLB CONSULTANT


Informatique et Management
Voir la fiche entreprise

Tarif

A partir de 2 695,00 €

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

PLB CONSULTANT


Informatique et Management
Voir la fiche

Tarif

A partir de 2 695,00 €

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

Description

Quels sont les avantages de suivre une formation Python ?
Le langage Python est particulièrement polyvalent même s’il est particulièrement utilisé dans la Data Science et le Machine Learning grâce à la richesse de ses bibliothèques scientifiques d’analyse de données. Tous les profils de développeurs pourront exploiter ses possibilités que ce soit pour automatiser des tâches systèmes (scripts), approvisionner les systèmes (Ansible), programmer toute sorte d’application (Web, Graphique, …), créer des Web Services, développer des applications embarquées, programmer des objets connectés, etc.

Quelles sont les opportunités professionnelles après une formation Python ?
Les professionnels formés en Python peuvent accéder à des postes de développeur web, analyste de données, ingénieur en intelligence artificielle, scientifique des données, etc.

Cette formation Python vous permet de disposer des solides bases en programmation objet, présentées et déclinées dans le contexte de Python. Les bibliothèques fondamentales de Python vous seront présentées et nous détaillerons l’accès aux données de différentes sources, selon différents formats, ainsi que les interfaces graphiques afin d’être complet dans la mise en œuvre d’une première application Python réaliste.

Les bonnes pratiques en matière d'utilisation du langage Python, des bibliothèques, ainsi que des outils de tests et d’évaluation font partie intégrante de la formation.

Programme

J1

Bien commencer avec Python

Pourquoi utiliser Python plutôt qu'un autre langage ?
Exemples de projet en Python
Différences entre les versions de Python
Installation de Python (pré-requis, fichiers, arborescence détaillée)
Fonctionnement de l'interpréteur Python
Les apports de l'interpréteur interactif iPython
Un premier programme...
Travaux pratiquesObjectifs : Prendre en main rapidement son environnement de développement
Description : Premier programme simple interactif de saisie et d’affichage de texte afin de prendre en main l'interpréteur Python. Un second programme non interactif permet de voir l’aspect automatisation de Python.

Les bases de Python (la syntaxe, les types)

Organisation du code (modules, package, importations)
Recommandations de nommage
Les types de base (entier, chaîne, réel, ...)
Erreurs classiques sur les types
Boucles (for), opérateurs, tests (if/else)
Définition et appel de fonction
Travaux pratiquesObjectifs : Mettre en œuvre la syntaxe fondamentale de Python 
Description : Saisie de notes dans un tableau numpy, affichage de la moyenne, de la plus petite et de la plus grande note. Chargement des notes depuis un fichier CSV (avec en tête), recherche du meilleur étudiant.
J2

Programmer objet en Python

Limites de la programmation « simplement » structurée
Philosophie, concepts, et vocabulaire de la programmation objet
Représentation des données en programmation objet (classes, propriétés)
Représentation des traitements (méthodes)
Contrôler l’accès aux données (encapsulation)
Exemples de classes prédéfinies en Python permettant de profiter pleinement de l’approche objet
Cycle de vie d’un objet (constructeur, destructeur)
Accéder aux attributs et fonctionnalités de l’objet cible (self)
Comment les objets communiquent entre eux ?
Classe mère et classe fille (héritage)
Des fonctions différentes avec … le même nom (polymorphisme)
Héritage simple et héritage multiple
La fonction super()
Protection des traitements (public, protected, private)
Le mécanisme de traitement des exceptions
Exemple de formalisme UML (diagramme de classe)
Tour d’horizon des classes fondamentales existantes en Python
Notion de Design Patterns
Travaux pratiquesObjectifs : Savoir programmer objet en Python. Comprendre les liens entre les classes.
Description : Mise en œuvre progressive d’un modèle objet en Python CLASSE, ELEVE, EXAMEN, NOTES regroupant l’ensemble des concepts vus dans ce chapitre et favorisant la réflexion sur les bonnes pratiques (encapsulation, héritage ? composition ?) tout en prenant en main la syntaxe de façon concrète.

Types de données évolués

Savoir choisir les bonnes structures de données
Tuples, séquences et listes (append, extend, insert, ...)
Fonctions utiles avec les listes (filter, map, reduce)
Gestion des piles ou des files
La puissance des dictionnaires (tableaux associatifs)
Construire une liste sur la base d'une expression (compréhension)
Travaux pratiquesObjectifs : Savoir utiliser les listes en Python
Description : Ajout à la classe ELEVE de propriétés (utilisation des list et set) sous la forme de label inclinés (utilisation de la librairie Matplotlib)
J3

Compléments sur le langage Python

Générateurs et itérateurs
Scripts exécutables
Opérateurs associés aux listes
Enchaînement de tests par rapport aux listes
Comparer les séquences
Travaux pratiquesObjectifs : Savoir utiliser les itérateurs
Description : Modification de la classe ResultatExamen afin qu'elle implémente un itérateur. Afficher dans un log les données qu'elle contient via l'utilisateur de l'itérateur (librairie logging)

Les modules de Python

Philosophie de Python avec les modules (standard, tiers, ...) 
Tour d'horizon des modules standards 
Module re (expressions rationnelles)
Modules os et sys (services du système d'exploitation)
Module csv (fichiers structurés par séparateur)
Comment trouver les modules ?
Installer des modules tiers (setuptools, EasyInstall)
Le dépôt central : Python Package index (Pypi)
Importer des modules
Mieux gérer son environnement avec Virtualenv
Travaux pratiquesObjectifs : Maîtriser l’utilisation des modules en Python
Description : Création d’un nouveau module en restructurant le projet précédent afin que les 2 classes Resultat et ResultatExamen soient dans un package note. On écrit ces données dans un fichier texte (librairie csv). On modularise notre projet afin de simplifier sa maintenance et sa livraison en respectant les bonnes pratiques.
J4

Gestion des données (Fichiers, SGBD, XML, JSON, API)

Accéder aux fichiers (objet File)
Conformité des modules Python pour accéder à une base de données (DB-API)
Python et requêtes SQL
Filtrer les données grâce aux expressions régulières
Présentation de la manipulation de flux XMl en Python (ElementTree)
Manipuler des fichiers CSV 
Le format JSON
Principe des API et des Web Services
Récupérer des données via des API
Travaux pratiquesObjectifs : Savoir dialoguer avec une base de données de type SQL en encapsulant les traitements de lecture/écriture pour respecter les bonnes pratiques d’architecture
Description : Construction d’un accès à une base MySQL ou PostgreSQL (librairies panda, psyco)
Dans un module persistance, on construit une classe ResultatDao, qui permet toutes les actions standards sur la table résultats (insertion, mise à jour, suppression, lecture ciblée ou complète de la table). Consommation de Web Services sous forme d'API.
J5

Création d’interface graphique 

Spécificités du développement d’interface graphique (programmation événementielle)
Présentation de la bibliothèque TkInter.
Les principaux conteneurs.
Présentation des widgets disponibles (Button, Radiobutton, Entry, Label, Listbox, Canvas, Menu, Scrollbar, Text...).
Le gestionnaire de fenêtres.
Le placement des composants, les différents layouts.
La gestion des événements, l'objet event.
Les applications multifenêtres.
Un petit mot sur la bibliothèque Qt
Travaux pratiquesObjectifs : Mettre en œuvre une IHM en Python avec TkInter
Description : Développement d’une maquette pour compléter l’atelier précédent sous forme graphique (menu, boîtes de dialogue, liste, boutons, …) afin de proposer une interface pour la saisie des actions de manipulations des données et l’affichage des résultats

Qualité et outils 

En quoi consiste l’assurance qualité d’un programme Python (QA) ?
Vue d’ensemble de la « trousse à outils » proposée au développeur 
Utiliser le plugin Eclipse pour Python (Pydev)
Rechercher des bugs avec PyChecker
Vérifier le respect des standards avec PyLint
Utiliser le guide de style PEP 8 (Python Enhancement Proposals)
Générer de la documentation
Disposer de statistiques sur l’exécution de son programme (profiling)
Comprendre l'intérêt des outils de Tests (Doctests, Unit tests)
Travaux pratiquesObjectifs : Bien comprendre le champ fonctionnel de chaque outil présenté dans ce chapitre et savoir les utiliser
Description : Audit de code Python ne respectant pas les standards professionnels en terme de lisibilité. Bonnes pratiques dans le Deboguage d’un programme. Mise en œuvre de tests unitaires simples. Génération de documentation. Repérage des parties consommatrices d’un programme Python d’analyse de données (profiling de l’application du TP d’extraction des données de data.gouv.fr).

Prérequis

Aucun

Ces formations pourraient vous intéresser

Formation Spark

Proposé par Sparks

Objectifs de la formation

  • Expliquer le fonctionnement d'Apache Spark et ses relations avec le Big Data et Hadoop
  • Utiliser les RDD pour gérer les opérations et MapReduce
  • Intégrer et utiliser HDFS avec Spark
  • Mettre en place et déployer une structure de cluster Spark
  • Appliquer le partitionnement et la programmation parallèle sur les données HDFS
  • Concevoir et générer une application Spark
  • Implémenter Spark Streaming pour le traitement des données en temps réel
  • Appliquer des algorithmes de Machine Learning avec MLlib et optimiser Spark
Tarif

A partir de 2 250,00 €

Durée

3 jours

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Exécuter en toute sécurité les mesures et/ou vérifications d'ordre électrique sur des installations et équipements électriques basse tension.
  • Gérer et appliquer la réglementation selon la norme NF C 18-510
  • Maintenir son habilitation électrique initiale
Tarif

A partir de 1 390,00 €

Durée

2j / 11h

Modes
  • Centre
  • Entreprise
  • Distance

Programmer en Scala

Proposé par ENI Service

Objectifs de la formation

  • Identifier les caractéristiques et les cas d'usage du langage Scala
  • Mettre en place un environnement de développement Scala
  • Appliquer les concepts de base de la syntaxe de Scala
  • Mettre en œuvre la programmation orientée objet en Scala
  • Utiliser les principes de la programmation fonctionnelle
  • Mettre en œuvre le Pattern Matching
  • Interagir avec les APIs Java
Tarif

A partir de 1 950,00 €

Durée

3j / 21h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

À l'issue de cette formation Tests d'intrusion des systèmes industriels, vous aurez acquis les connaissances et les compétences nécessaires pour : 

  • Comprendre le fonctionnement des SI industriels et leurs spécificités
  • Découvrir les outils et les méthodologies pour les tests d'intrusion sur SI industriel
  • Connaître la programmation d'automates programmables industriels
  • Mettre en pratique ses connaissances sur un environnement industriel représentatif
Tarif

A partir de 3 056,00 €

Durée

4j / 28h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Se préparer efficacement au passage de l'examen de certification CDA
Tarif

A partir de 2 400,00 €

Durée

3 jours

Modes
  • Centre
  • Entreprise

Objectifs de la formation

  • Comprendre les principes fondamentaux de programmation orientée objet.
  • Écrire des classes.
  • Instancier les classes pour créer des objets.
  • Mettre en œuvre l'encapsulation pour garantir l'intégrité des objets.
  • Mettre en œuvre l'héritage et le polymorphisme.
  • Utiliser les classes abstraites et les interfaces.
  • Gérer correctement les erreurs avec le mécanisme d'exceptions de PHP.
  • Concevoir un programme selon les principes de la programmation orientée objet.
  • Connaître les architectures logicielles basées sur la programmation orientée objet.
Tarif

Contacter l'organisme

Durée

2j / 14h

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

A l'issue de cette formation Java sans connaître l'objet vous aurez acquis les connaissances et compétences nécessaires pour : 

  • Maîtriser la syntaxe et les concepts 
  • Maîtriser les possibilités de Java 8
Tarif

A partir de 2 590,00 €

Durée

5j / 35h

Modes
  • Centre
  • Entreprise
  • Distance

Formation PostgreSQL : Développement

Proposé par PLB CONSULTANT

Objectifs de la formation

  • Déployer et paramétrer PostGreSQL
  • Réaliser une base de données optimale
  • Manipuler les logs de PostGreSQL
  • Appréhender la programmation côté serveur
Tarif

A partir de 1 300,00 €

Durée

2j / 14h

Modes
  • Centre
  • Entreprise
  • Distance

Formation Ruby

Proposé par Sparks

Objectifs de la formation

  • Apprendre à programmer en langage Ruby
  • Connaître la syntaxe
  • Savoir administrer les classes et les bibliothèques
  • Adlinistrer l'objet en Ruby
  • Maîtriser la Méta Programmation
  • Avoir des notions avancées
Tarif

A partir de 1 800,00 €

Durée

3 jours

Modes
  • Centre
  • Entreprise
  • Distance

Objectifs de la formation

  • Mettre en œuvre les concepts de la programmation fonctionnelle et déclarative
  • Installer et configurer un projet React
  • Développer des interfaces utilisateurs à base de composants
  • Gérer la navigation au sein de l’application
  • Mettre en place une architecture de gestion d’état de l’application avec Redux
  • Tester le code et les composants
Tarif

Contacter l'organisme

Durée

4j / 28h

Modes
  • Centre
  • Entreprise
  • Distance

Je cherche à faire...