Programmation Python avancée - 2e édition
Présentation du livre
Ce livre s’adresse à des lecteurs ayant déjà une certaine expérience de la programmation.
Son objectif est de rappeler les concepts-clés de Python et de les illustrer dans des cas d’utilisation variés comme l’optimisation, les statistiques, le traitement du signal et l’intelligence artificielle.
Il est composé de cinq parties :
- Les bases du langage : un rappel des bases du langage Python (versions 3.8 et 3.9) focalisé sur les structures de données.
- L’écosystème Python : les bibliothèques tierces incontournables, présentes dans la plupart des projets Python. L’environnement Anaconda est également introduit.
- Écrire un Python naturel et efficace : les paradigmes de programmation, les concepts et structures Python qui s’y rapportent et les conventions de la communauté Python pour écrire un code clair et facile à maintenir.
- Python, couteau suisse du quotidien : comment manipuler les fichiers (image, son, Excel, XML, PDF, JSON…), construire et interagir avec des services web, écrire des outils graphiques ou en ligne de commande.
- Développer un projet en Python : comment préparer une bibliothèque, interagir avec des bibliothèques tierces, gérer les versions et la non-régression, et comment garantir la qualité, la correction et la robustesse du code.
Le code source des exemples avancés présentés au cours des chapitres ainsi que des ressources complémentaires sont librement accessibles en ligne sur le site de l’auteur : https://www.xoolive.org/python/
Sommaire de l'ouvrage
Les bases du langage Python. Types et arithmétique de base. La bibliothèque Python standard. La gestion de fichiers. Structures de données avancées. L'écosystème Python. La suite logicielle Anaconda. Le calcul numérique avec NumPy. Produire des graphiques avec Matplotlib. La boîte à outils scientifiques SciPy. L’environnement interactif Jupyter. L’analyse de données avec Pandas. La visualisation interactive avec Altair et ipyleaflet. Écrire un Python naturel et efficace. La programmation fonctionnelle. Décorateurs de fonctions et fermetures. Itérateurs, générateurs et coroutines. La programmation orientée objet. Interfaces et protocoles. L’ABC de la métaprogrammation. La programmation concurrente. Python, couteau suisse du quotidien. Comment manipuler des formats de fichiers courants ?. Comment interroger et construire des services web ?. Comment écrire un outil graphique ou en ligne de commande ?. Développer un projet en Python. Publier une bibliothèque Python. Mettre en place un environnement de tests. Annotations et typage statique. Comment écrire une API Python vers une bibliothèque C ?