Profil du formateur
Formateur consultant, expert, pédagogue et certifié dans son domaine
Méthode pédagogique
La formation est constituée d’apports théoriques et d’exercices pratiques. Chaque stagiaire dispose d’un poste de travail pour la formation en présentiel, et la gestion en petit groupe (jusqu’à 8 stagiaires) permet un suivi individualisé et adapté. Durant les sessions de formation, un support pédagogique est remis aux stagiaires.
Votre formation est en distanciel
Vous munir : un ordinateur, une connexion internet, une adresse e-mail valide, un équipement audio (micro et enceintes ou casque), une Webcam (facultatif , dans l’idéal) un deuxième écran (facultatif, dans l’idéal)
Suivi, évaluation, sanction
Des tours de table permettent de suivre la progression du stagiaire au fur et à mesure de la formation. Un suivi de la formation est réalisé par une feuille de présence émargée par demi-journée par les stagiaires et le formateur. Un questionnaire de satisfaction et une validation des acquis sont complétés par chaque stagiaire en fin de formation.
Formation sans certification.
Plan du cours
Présentation du langage Python (1 heure)
- Présentation et historique du langage
- Installation d'une distribution Python
- Installation et prise en main d’un environnement de développement
- Notion d’environnement virtuel
- La documentation
Les éléments de base du langage (3 heures)
- Structure d’un programme
- Notions fondamentales
- Les instructions et blocs d’instructions
- Expressions et affectation
- Les identificateurs
- Les commentaires
- Les constantes littérales
- Les opérateurs
- Les variables
- Définition des variables
- Portée et durée de vie des variables
- Les types de données
- Le typage dynamique en Python
- Les types de données primitifs
- Les types de données composés (structures)
- Conversion de types de données
- Structures de contrôle
- Les instructions conditionnelles
- Les instructions répétitives
- Les entrées-sorties
- Les collections (Liste, tuple et dictionnaire)
- Travaux pratiques :
- Ecriture de programme élémentaire : Jeu
- Manipulation de données complexes avec les listes et les dictionnaires contenant des informations systèmes
Les fonctions, les modules et les packages (3 heures)
- Les fonctions
- Création et appel
- Les fonctions avec valeur de retour multiple
- Les fonctions avec un nombre de paramètres variables
- Les paramètres nommés et optionnels
- Les modules
- Présentation
- L’importation et l’utilisation des modules
- Les packages
- Travaux pratiques :
- Création de bibliothèques de fonctions systèmes
- Répartition dans des modules
Les rudiments de la programmation objet (3 heures)
- Concepts
- Les classes et la création d’objet
- Les méthodes de classe
- Utilisation de la classe date
- La gestion des exceptions
- Travaux pratiques :
- Création d’une classe représentant des données métiers
- Création et manipulation d’objet
- Manipulation des formats de date pour rendre une date système affichable lisiblement à l’écran
Automatisation des différentes taches systèmes (3 heures)
- Récupérer des informations sur le système
- Gestion des variables d’environnements
- Exécuter des commandes externes
- subprocess
- Pipes
- La gestion des processus
- Créer des scripts réutilisables et multiplateforme
- La ligne de commande
- Le module argparse
- Le passage de paramètres et d’options
- Travaux pratiques :
- Ebauche d’un programme en ligne de commande permettant de réaliser des traitements sur des fichiers
Analyse et manipulation de données (5 heures)
- Analyser des fichiers logs avec les expressions régulières
- Gestion des fichiers et des répertoires
- Les fonctions BuiltIn
- Le module pathlib
- Manipuler des fichiers CSV/JSON
- Utiliser d’une base de données relationnelle
- Travaux pratiques :
- Implémentation des manipulations de fichiers et répertoires dans le programme précédemment réalisé
Intégration avec les outils de l’administrateur système (3 heures)
- Consommer des services REST
- Principes
- Les bibliothèques Python
- Envoyer des emails
- Travaux pratiques :
- Interrogation d’une API distante d’informations sur un serveur/service réseau