146 lines
3.9 KiB
Markdown
146 lines
3.9 KiB
Markdown
---
|
|
title: Plan de formation Python Initiation
|
|
author: Steve Kossouho
|
|
---
|
|
|
|
# Programme de Python Initiation
|
|
|
|
La formation s'adresse à des quasi débutants en programmation, ou curieux d'en savoir un peu plus sur les bases de Python.
|
|
Pour les plus avancés, le rythme change (*uniquement si le groupe est suffisamment homogène*).
|
|
|
|
## Démarrage
|
|
|
|
- Tour de table et présentation
|
|
- Logistique, planning et administratif
|
|
- Rappel du programme
|
|
|
|
## Découvrir Python
|
|
|
|
- Nature de Python et court historique
|
|
- Versions de Python et différences
|
|
- Découvrir la ligne de commande et le shell
|
|
- Environnements de développement intégrés
|
|
- Créer un nouveau projet avec PyCharm
|
|
|
|
*lundi 10h30 si pas de pb d'install*
|
|
|
|
## Découvrir le langage
|
|
|
|
- Syntaxe de base
|
|
- Types de base : chaînes, nombres
|
|
- Variables et expressions
|
|
- Contrôler ce que l'on exécute : conditions et boucles
|
|
- Découvrir les listes (et tuples, sets) + slicing
|
|
- Découvrir les dictionnaires
|
|
- Compréhensions (listes etc.)
|
|
- Opérations sur les chaînes : méthodes et formatage
|
|
|
|
*mardi 14h30 max*
|
|
|
|
## Le droit aux erreurs
|
|
|
|
- Découvrir le concept d'exceptions
|
|
|
|
*mardi 15h45*
|
|
|
|
## Découvrir les fonctions
|
|
|
|
- Découvrir l'utilité des fonctions
|
|
- Découvrir la syntaxe
|
|
- Référence vs appel de fonction
|
|
- Valeurs de retour d'une fonction
|
|
- Passer des arguments aux fonctions
|
|
|
|
*mercredi 10h00*
|
|
|
|
## Découvrir la structure du code au-delà du simple script
|
|
|
|
- Expliquer ce qu'est pip, venv (*avec exemples*) et aussi conda
|
|
- Modules et packages
|
|
- Bibliothèque standard python et imports
|
|
- Exemple : faire un peu de calcul avec la bibliothèque standard
|
|
- Réutiliser votre propre code
|
|
- Extra : virtualenv et pip)
|
|
|
|
*mercredi 12h00*
|
|
|
|
## Types supplémentaires
|
|
|
|
- Découvrir les types heure+date et intervalle de temps
|
|
- Convertir depuis du texte ou vers du texte
|
|
|
|
*mercredi 14h30*
|
|
|
|
## Découvrir la programmation orientée objet
|
|
|
|
- Intérêts de la programmation objet
|
|
- Découvrir la syntaxe
|
|
- Concepts d'attributs et de méthodes
|
|
- Différence entre une classe et ses objets
|
|
- Instancier avec une autre signature
|
|
- Découvrir l'héritage et le polymorphisme
|
|
- Bonus : Courte introduction aux décorateurs avec @staticmethod
|
|
- Bonus : Introspection (*getattr, setattr, dir, isinstance, type*)
|
|
- Bonus : Diagramme de classes UML
|
|
|
|
*mercredi 17h00*
|
|
|
|
# Programme de Python Approfondissement
|
|
|
|
Même public que l'initiation : peu d'expérience en programmation ou curiosité quant à Python. Nécessite toutefois de connaître les bases du langage.
|
|
|
|
**Objectif** : aller un peu plus loin dans les bases de Python pour pouvoir traiter quelques données.
|
|
|
|
## Découvrir comment manipuler des fichiers texte
|
|
|
|
- Écrire et lire des fichiers (*open/close*)
|
|
- Écrire et lire des fichiers (*gestionnaire de contexte*)
|
|
- Formats : JSON
|
|
- Formats : CSV
|
|
- Extra : Parcours de fichiers (pathlib)
|
|
|
|
*jeudi 14h30*
|
|
|
|
## Toucher du doigt les bases de données SQL avec DBAPI et SQLite3
|
|
|
|
- Exemple simple pour dialoguer avec une base SQL
|
|
- Ajouter et requêter des données simplement
|
|
- Bonus : ORMs (peewee)
|
|
|
|
*jeudi 17h00*
|
|
|
|
## Documenter du code Python
|
|
|
|
- Comment on fait ?
|
|
- Qu'est-ce qu'on documente ?
|
|
- Comment on génère des fichiers HTML de documentation ? (*pdoc3, sphinx*)
|
|
- Bonus : Donner des indications sur le type des variables et arguments
|
|
|
|
*vendredi 10h45*
|
|
|
|
## Faire sa première interface graphique avec Python
|
|
|
|
- Exemples d'outils pour les interfaces graphiques
|
|
- PySide6 avec Python (*sous Linux*)
|
|
- Écrire une fenêtre simple
|
|
- Interagir avec les contrôles (boutons, champs)
|
|
- Concevoir graphiquement une fenêtre et l'utiliser avec Python
|
|
|
|
*vendredi 15h45*
|
|
|
|
## Bonus : Aborder la journalisation
|
|
|
|
- Qu'est-ce que c'est ? Et pourquoi, pour qui, quand ?
|
|
- Exemple simple de journalisation
|
|
- Exemple configuré de journalisation dans un fichier
|
|
|
|
*vendredi 16h30* (selon possibilités)
|
|
|
|
## Certifications
|
|
|
|
Au plus tard le vendredi à 15h30. Dure jusqu'à 17h30.
|
|
|
|
## That's all folks!
|
|
|
|

|