Objectifs de formation
A l'issue de cette formation, vous serez capable de :
- Expliquer les subtilités du langage Python pour écrire des programmes qui interagissent avec un système de type Linux.
Prérequis
Avoir suivi les stages LUX-ADMA "Linux - Administration avancée" et PYT "Python - Par la pratique" ou avoir les connaissances équivalentes.
Public concerné
Développeurs, administrateurs.
Programme
Jour 1
Environnement de travail
- Préparer sa station de travail Linux (prérequis)
- Configurer et utiliser l'interpréteur Python
- Installer un IDE : Spyder, PyDev ou PyCharm
Exemples de travaux pratiques (à titre indicatif)
- Installer Python 3 et des bibliothèques tierces
- Installer et configurer un IDE
- Ecrire un programme pour tester la configuration
Environnement système
- Les différentes couches de l'architecture système Linux
- Présentation des classes nécessaires
- Diverses interfaces de systèmes d'exploitation (os.environ, os.ctermid...)
- Les flux standards (sys.stdin, sys.stdout, sys.stderr)
- Interprétation des arguments de la ligne de commande
- Exécuter des commandes du Shell Bash (system)
- Manipuler les expressions régulières
- Mise au point de programmes (débogage)
Exemples de travaux pratiques (à titre indicatif)
- Ecrire un programme qui affiche l'environnement système
- Exécuter des commandes du Shell dans un programme Python
- Débogage d'un programme (exécution pas à pas, traçage...)
Jour 2
Gestion des processus
- Multiprocessing (spawn, fork...)
- Présentation de la classe process
- Echange d'objets entre les processus (queues, tubes)
- Mémoire partagée
- Synchronisation entre processus
- Présentation des classes
- Pool (workers)
- Multiprocessing
- Primitives de synchronisation
- Manipulation des processus (os.kill, os.getpid...)
Exemples de travaux pratiques (à titre indicatif)
- Gestion des processus
- Créer un programme multiprocessing
- Créer une communication entre deux processus
- Synchronisation
Gestion des threads
- Multithreading
- Présentation de la classe threading
- Instanciation et lancement de threads
- Synchronisation (lock, rlock, semaphore...)
- Communication entre threads (event objects)
Exemples de travaux pratiques (à titre indicatif)
- Créer un programme avec plusieurs threads
- Créer une communication entre deux threads
- Synchronisation
Jour 3
Gestion des signaux
- Définition
- Présentation de la classe signal
- Intercepter un signal
Exemple de travaux pratiques (à titre indicatif)
- Interception d'un signal
Gestion de fichiers
- Manipulation
- De fichiers (shutil.copyfile, os.remove, os.rename...)
- De dossiers (os.mkdir, os.rmdir...)
- Gestion des chemins d'accès (os.path)
- Permissions (os.chmod, os.chown, os.umask...)
- Création de fichiers (os.open, os.write, os.read...)
Exemples de travaux pratiques (à titre indicatif)
- Manipulation de fichiers
- Manipulation de dossiers et des chemins d'accès
- Gestion des permissions de fichiers
- Conception d'un fichier, ajout de données et lecture
Le contenu de ce programme peut faire l'objet d'adaptation selon les niveaux, prérequis et besoins des apprenants.
Modalités, méthodes et moyens pédagogiques
Formation délivrée en présentiel ou distanciel* (blended-learning, e-learning, classe virtuelle, présentiel à distance).
Le formateur alterne entre méthode** démonstrative, interrogative et active (via des travaux pratiques et/ou des mises en situation).
Variables suivant les formations, les moyens pédagogiques mis en oeuvre sont :
- Ordinateurs Mac ou PC (sauf pour certains cours de l'offre Management), connexion internet fibre, tableau blanc ou paperboard, vidéoprojecteur ou écran tactile interactif (pour le distanciel)
- Environnements de formation installés sur les postes de travail ou en ligne
- Supports de cours et exercices
En cas de formation intra sur site externe à M2i, le client s'assure et s'engage également à avoir toutes les ressources matérielles pédagogiques nécessaires (équipements informatiques...) au bon déroulement de l'action de formation visée conformément aux prérequis indiqués dans le programme de formation communiqué.
* nous consulter pour la faisabilité en distanciel
** ratio variable selon le cours suivi
Modalités d’évaluation des acquis
- En cours de formation, par des études de cas ou des travaux pratiques
- Et, en fin de formation, par un questionnaire d'auto-évaluation
Accessibilité de la formation
Le groupe M2i s'engage pour faciliter l'accessibilité de ses formations. Les détails de l'accueil des personnes en situation de handicap sont consultables sur la page Accueil et Handicap.
Modalités et délais d’accès à la formation
Les formations M2i sont disponibles selon les modalités proposées sur la page programme. Les inscriptions sont possibles jusqu'à 48 heures ouvrées avant le début de la formation. Dans le cas d'une formation financée par le CPF, ce délai est porté à 11 jours ouvrés.