Description
Rappels sur Python
- Historique et dates importantes
- Les différences entre Python 2 et Python 3
- Le site officiel et la documentation
- Bien choisir son environnement de développement
Rappels sur la syntaxe
- Variables et types
- Les séquences
- Le slicing
- La décomposition
- Les conditions
- Les boucles for et while
- La clause else dans les boucles
- Listes en compréhension
- Les fonctions
- Paramètres facultatifs, positionnels, à nombre variable, …
Aller plus loin avec la programmation objet
- Rappels sur la programmation objet : classes, instances, …
- Les propriétés
- Les attributs de classe
- Les méthodes de classe et méthodes statiques
- L’introspection
- La classe object
- Les méthodes spéciales
- Le destructeur
- Héritage simple et héritage multiple
- Polymorphisme et duck typing
- La classe type
- Les métaclasses
- Abstract Base Class
- Rappels sur les exceptions
Fonctionnalités avancées
- Les générateurs
- Les décorateurs
- Les itérateurs
- Les context managers
- Les closures
Packager et déployer une application Python
- Le gestionnaire de paquets pip
- Le Python Package Index (PyPI)
- Installer un module externe
- Le module setuptools
- Organiser son package
- Le MANIFEST et le README
- Packager son application au format wheel
- Déployer son package sur PyPI
Travailler avec un environnement virtuel
- L’intérêt d’utiliser un environnement virtuel
- Les solutions disponibles
- Installer un module dans un environnement virtuel
- Gérer efficacement les dépendances d’un projet
Optimisation et parallélisme
- Profilage de code avec timeit et cProfile
- Les queues : créer des files synchronisées
- Le threading
- Le multiprocessing
Des librairies utiles
- De vrais scripts Python : le module argparse
- HTTP pour les humains : le module requests
- Parser du XML et du HTML : le module xml.etree
- Python pour la science : les modules Numpy et Matplotlib
- Intelligence artificielle : le module Scikit-Learn