Python
29 livres et 26 critiques, dernière mise à jour le 26 juillet 2023 , note moyenne : 4.3
- Scripting Python sous Linux - Développez vos outils systèmes
- Scripting Python sous Linux - Développez vos outils systèmes
- Fluent Python - Clear, Concise, and Effective Programming
- Petite leçon de Python - Introduction pratique et orientée projet
- Python 3 - Les fondamentaux du langage
- PYTHON. APPRENTISSAGE ACTIF - Pour l'étudiant et le futur enseignant
- Python, Raspberry Pi et Flask - Capturez des données télémétriques et réalisez des tableaux de bord web
- Apprendre Python 3
- Python 3 - Les fondamentaux du langage
- Apprendre à programmer avec Python 3 - Avec 60 pages d'exercices corrigés !
- Python - Précis et concis - 5e édition
- Python - Précis et concis - 3e édition
- Algorithmique & Calcul numérique - Licences et Prépa
- Algorithmique & Programmation par la pratique - Travaux pratiques résolus et programmation avec les logiciels Scilab et Python
- Django - Industrialisez vos développements Python
- The Definitive Guide to Jython
- Le Python en bref
- Programming Python
- Rapid GUI Programming With Python and Qt - The Definitive Guide to PyQt Programming
- Beginning Python Visualization - Crafting Visual Transformation Scripts
- Python - Les Fondamentaux du langage - La Programmation pour les scientifiques
- Apprendre à programmer avec Python
- Au cœur de Python - volume 1
- Au cœur de Python - volume 2
- Python en Concentré - Manuel de référence
- Programming Python
- Python par l'exemple
- wxPython In Action
- Apprendre à programmer avec Python 3 - Avec plus de 50 pages de corigés d'exercices !
Scripting Python sous Linux
Développez vos outils systèmes
Résumé de l'éditeur
Débutée par quelques chapitres pour présenter l'environnement de travail et rappeler les bases du langage Python, la première partie présente ensuite les principes de la Programmation Orientée Objet en Python ainsi que la librairie standard de Python.
Dans la deuxième partie, le lecteur apprend grâce à des exemples concrets à concevoir des outils pour récupérer des informations sur le système, à générer une infrastructure sur le cloud AWS, à renifler le réseau pour récupérer des informations, à accéder aux bases de données, à utiliser différents formats de fichiers (.odt, .csv, .ini, .tar, .zip...), à générer des cartes, à générer des documents au format texte, CSV ou HTML, ou encore à générer des données aléatoires cohérentes... À la fin de cette partie, la simulation de l'activité d'une petite entreprise de gestion permet au lecteur de tester des scripts facilitant la prise de commandes, leurs livraisons et la gestion de stock. La dernière partie propose au lecteur une série d'astuces et d'exemples concrets lui permettant de mettre en oeuvre des techniques plus avancées. L'auteur donne également un aperçu d'outils et d'applications écrites en Python qui font la différence pour aller plus loin dans l'écriture de scripts avec ce langage.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Édition : ENI - 862 pages, 2e édition, 12 juillet 2023
ISBN10 : 9782409040764 - ISBN13 : 9782409040764
Le côté fonctionnel classique de Python
Quelques instructions de base
Les types de données en Python
Le langage Python
Le côté Objet de Python
Librairie standard et quelques autres
Aller plus loin avec le langage Python et la POO
Python et le Cloud
Récupérer des infos sur le système
Les formats de fichiers populaires
Manipulation de données
La génération de rapports
Simulation d'activité
Trucs et astuces
Exemples
Aller plus loin avec Python
Pour aller encore plus loin
Annexes
Scripting Python sous Linux
Développez vos outils systèmes
Résumé de l'éditeur
Débutée par quelques chapitres pour présenter l'environnement de travail et rappeler les bases du langage Python, la première partie présente ensuite les principes de la Programmation Orientée Objet en Python ainsi que la librairie standard de Python.
Dans la deuxième partie, le lecteur apprend grâce à des exemples concrets à concevoir des outils pour récupérer des informations sur le système, accéder aux bases de données, utiliser différents formats de fichiers (.odt, .csv, .ini, .tar, .zip…), générer des documents au format texte, CSV ou HTML, ou encore générer des données aléatoires… À la fin de cette partie, la simulation de l'activité d'une petite entreprise de gestion permet au lecteur de tester des scripts facilitant la prise de commandes, leurs livraisons et la gestion de stock.
La dernière partie propose au lecteur une série d'astuces et d'exemples concrets lui permettant de mettre en oeuvre des techniques plus avancées. L'auteur donne également un aperçu d'outils et d'applications écrites en Python qui font la différence pour aller plus loin dans l'écriture de scripts avec ce langage.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Édition : ENI - 763 pages, 1re édition, 10 juin 2020
ISBN10 : 2409025676 - ISBN13 : 9782409025679
Le côté fonctionnel classique de Python
Quelques instructions de base
Les types de données en Python
Le langage Python
Le côté Objet de Python
Librairie standard et quelques autres
Aller plus loin avec le langage Python et la POO
Récupérer des infos sur le système
Les formats de fichiers populaires
Manipulation de données
La génération de rapports
Simulation d'activité
Trucs et astuces
Exemples
Aller plus loin avec Python
Pour aller encore plus loin
Annexes
Commenter Signaler un problème
Développez vos outils systèmes
Débutée par quelques chapitres pour présenter l'environnement de travail et rappeler les bases du langage Python, la première partie présente ensuite les principes de la Programmation Orientée Objet en Python ainsi que la librairie standard de Python.
Dans la deuxième partie, le lecteur apprend grâce à des exemples concrets à concevoir des outils pour récupérer des informations sur le système, accéder aux bases de données, utiliser différents formats de fichiers (.odt, .csv, .ini, .tar, .zip…), générer des documents au format texte, CSV ou HTML, ou encore générer des données aléatoires… À la fin de cette partie, la simulation de l'activité d'une petite entreprise de gestion permet au lecteur de tester des scripts facilitant la prise de commandes, leurs livraisons et la gestion de stock.
La dernière partie propose au lecteur une série d'astuces et d'exemples concrets lui permettant de mettre en oeuvre des techniques plus avancées. L'auteur donne également un aperçu d'outils et d'applications écrites en Python qui font la différence pour aller plus loin dans l'écriture de scripts avec ce langage.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Fluent Python
Clear, Concise, and Effective Programming
Résumé de l'éditeur
Python’s simplicity lets you become productive quickly, but often this means you aren’t using everything it has to offer. With the updated edition of this hands-on guide, you’ll learn how to write effective, modern Python 3 code by leveraging its best ideas.
Don’t waste time bending Python to fit patterns you learned in other languages. Discover and apply idiomatic Python 3 features beyond your past experience. Author Luciano Ramalho guides you through Python’s core language features and libraries and teaches you how to make your code shorter, faster, and more readable.
Featuring major updates throughout the book, Fluent Python, second edition, covers:
Special methods: The key to the consistent behavior of Python objects
Data structures: Sequences, dicts, sets, Unicode, and data classes
Functions as objects: First-class functions, related design patterns, and type hints in function declarations
Object-oriented idioms: Composition, inheritance, mixins, interfaces, operator overloading, static typing and protocols
Control flow: Context managers, generators, coroutines, async/await, and thread/process pools
Metaprogramming: Properties, attribute descriptors, class decorators, and new class metaprogramming hooks that are simpler than metaclasses
Édition : O'Reilly - 850 pages, 2e édition, 29 avril 2022
ISBN10 : 1492056359 - ISBN13 : 9781492056355
The Python Data Model
An Array of Sequences
Dictionaries and Sets
Unicode Text Versus Bytes
Data Class Builders
Object References, Mutability, and Recycling
Functions as Objects
Functions as First-Class Objects
Type Hints in Functions
Decorators and Closures
Design Patterns with First-Class Functions
Classes and Protocols
A Pythonic Object
Special Methods for Sequences
Interfaces, Protocols, and ABCs
Inheritance: For Better or for Worse
More About Type Hints
Operator Overloading
Control Flow
Iterators, Generators, and Classic Coroutines
with, match, and else Blocks
Concurrency Models in Python
Concurrent Executors
Asynchronous Programming
Metaprogramming
Dynamic Attributes and Properties
Attribute Descriptors
Class Metaprogramming
L'ouvrage aborde une grande série de sujets, mais approfondit surtout les annotations de types (et les cas où elles ne sont pas utiles) et les mécanismes de programmation asynchrone. La première moitié (parties 1 et 2) montrent comment exploiter les fonctions existantes de Python, tandis que la suivante (parties 3 et 5) se focalise sur l'écriture de classes, notamment avec de la métaprogrammation. La partie 4, quant à elle, est axée sur la programmation concurrente avec les mécaniques asynchrones récemment ajoutées dans le langage. Ce faisant, l'auteur explique comment fonctionne l'interpréteur Python, en allant par exemple jusqu'au MRO (method resolution order) dans le cas de l'héritage. Certains détails sont uniquement présents sur le site accompagnant le livre.
Chaque chapitre se termine par un résumé des idées principales et une liste d'articles ou livres pour approfondir les sujets abordés. De manière plus intéressante, les chapitres se concluent tous par une tribune, où l'auteur exprime son opinion ou retrace l'historique de certains mécanismes.
Globalement, ce livre de très bonne facture s'adresse aux utilisateurs déjà expérimentés de Python et leur ouvre tout un champ de possibilités qu'ils n'osaient pas imaginer pour ce langage. Ce livre détaille la manière dont Python implémente les mécanismes qui ont fait son succès, afin de les exploiter au mieux dans son code (si cela devait s'avérer nécessaire).
Commenter Signaler un problème
Clear, Concise, and Effective Programming
Python’s simplicity lets you become productive quickly, but often this means you aren’t using everything it has to offer. With the updated edition of this hands-on guide, you’ll learn how to write effective, modern Python 3 code by leveraging its best ideas.
Don’t waste time bending Python to fit patterns you learned in other languages. Discover and apply idiomatic Python 3 features beyond your past experience. Author Luciano Ramalho guides you through Python’s core language features and libraries and teaches you how to make your code shorter, faster, and more readable.
Featuring major updates throughout the book, Fluent Python, second edition, covers:
Special methods: The key to the consistent behavior of Python objects
Data structures: Sequences, dicts, sets, Unicode, and data classes
Functions as objects: First-class functions, related design patterns, and type hints in function declarations
Object-oriented idioms: Composition, inheritance, mixins, interfaces, operator overloading, static typing and protocols
Control flow: Context managers, generators, coroutines, async/await, and thread/process pools
Metaprogramming: Properties, attribute descriptors, class decorators, and new class metaprogramming hooks that are simpler than metaclasses
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Petite leçon de Python
Introduction pratique et orientée projet
Résumé de l'éditeur
Vous avez besoin de savoir utiliser Python rapidement mais vous voulez vous épargner une litanie d'informations théoriques inutiles ?
Petite leçon de Python, 2e édition est une introduction directe à l’essentiel de Python : les concepts généraux de la programmation dans ce langage, les fondamentaux, la résolution de problèmes. Dans une seconde partie, trois exemples de projets réels permettent de se projeter et de mettre en pratique ces apprentissages. Vous allez ainsi vous exercer à :
- utiliser la data visualisation pour réaliser des graphes et des tableaux ;
- construire et déployer une application web interactive ;
- créer un jeu vidéo simple.
Ce faisant, vous serez très vite capable de construire des programmes pratiques sous Python et de mettre au point des techniques de programmation avancées.
Véritable best-seller, Petite leçon de Python est LE guide de référence mondialement reconnu pour devenir rapidement opérationnel dans ce langage particulièrement accessible et performant qu’est Python.
Édition : Pearson Education - 664 pages, 2e édition, 20 août 2020
ISBN10 : 2744067598 - ISBN13 : 9782744067594
- Mise en route
- Variables et types de données simples
- Présentation des listes
- Utilisation des listes
- Instruction if
- Dictionnaires
- Saisie d'utilisateur et boucles while
- Fonctions
- Classes
- Fichiers et exceptions
- Tester le code
- Une fusée qui tire des balles
- Les aliens !
- Score
- Génération des données
- Téléchargement de données
- Utilisation des API
- Premiers pas avec Django
- Comptes d'utilisateur
- Peaufiner et déployer une application
- Installation et dépannage
- Éditeurs de texte et IDE
- Obtenir de l'aide
- Gestion de versions avec Git
Bien que destiné à un public de développeurs en devenir, l'auteur cherche à montrer par l'exemple les meilleures pratiques actuelles de développement en Python, notamment en ce qui concerne le paradigme orienté objet. Le contenu est très pragmatique et non dogmatique, bien adapté au public cible.
Pour les débutants, les messages d'erreur sont souvent cryptiques, c'est pour cela qu'une partie s'attelle à leur déchiffrage. On peut toutefois regretter que le chapitre sur les ressources en ligne pour obtenir de l'aide ne soit qu'une traduction du texte anglais, sans aucune adaptation au monde francophone.
Commenter Signaler un problème
Introduction pratique et orientée projet
Vous avez besoin de savoir utiliser Python rapidement mais vous voulez vous épargner une litanie d'informations théoriques inutiles ?
Petite leçon de Python, 2e édition est une introduction directe à l’essentiel de Python : les concepts généraux de la programmation dans ce langage, les fondamentaux, la résolution de problèmes. Dans une seconde partie, trois exemples de projets réels permettent de se projeter et de mettre en pratique ces apprentissages. Vous allez ainsi vous exercer à :
utiliser la data visualisation pour réaliser des graphes et des tableaux ;
construire et déployer une application web interactive ;
créer un jeu vidéo simple.
Ce faisant, vous serez très vite capable de construire des programmes pratiques sous Python et de mettre au point des techniques de programmation avancées.
Véritable best-seller, Petite leçon de Python est LE guide de référence mondialement reconnu pour devenir rapidement opérationnel dans ce langage particulièrement accessible et performant qu’est Python.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Python 3
Les fondamentaux du langage
Résumé de l'éditeur
La première partie du livre détaille les atouts de Python 3 pour répondre aux besoins des entreprises quel que soit le domaine informatique concerné.
La seconde partie est un guide à destination des débutants, que ce soit en Python ou en développement en général, elle permet d'aborder en douceur les concepts clés autour de projets servant de fil rouge et propose la réalisation de quelques exercices.
La troisième partie porte sur les fondamentaux du langage : les notions sont présentées progressivement avec des exemples de code qui illustrent chaque propos. L'auteur a souhaité que le lecteur atteigne une autonomie réelle dans son apprentissage, avec pour chaque notion présentée deux objectifs distincts : permettre à celui qui ne connaît pas la notion de se l'approprier correctement, notamment en respectant son rôle, et permettre à celui qui la connaît de trouver des angles d'attaques originaux pour aller le plus loin possible dans son exploitation.
La quatrième partie permet d'avoir un aperçu de l'utilisation des fonctionnalités de Python 3 pour la manipulation de fichiers ou de bases de données.
Enfin, la dernière partie de l'ouvrage est un vaste tutoriel qui permet de mettre en pratique, dans un cadre professionnel, tout ce qui a été vu précédemment en créant une application qui couvre tous les domaines courants du développement (données, Web avec Pyramid, interface graphique avec Gtk, script système...) et ainsi de présenter des solutions efficaces de développement utilisant Python 3.
Le code source des parties 2, 4 et 5 est intégralement téléchargeable sur le site www.editions-eni.fr pour permettre au lecteur de tester le programme et de le modifier à sa guise de manière à faire ses propres expériences.
Édition : ENI - 672 pages, 3e édition, 9 octobre 2019
ISBN10 : 2409020968 - ISBN13 : 9782409020964
Clés théoriques
Présentation de Python
Pourquoi choisir Python
Installer son environnement de travail
Les premiers pas
Fonctions et modules
Les principaux types
Les classes
Algorithmique de base
Déclarations
Modèle objet
Types de données et algorithmes appliqués
Manipulation de données
Bases de données
Créer une application web en 30 minutes
Créer une application console en 10 minutes
Créer une application graphique en 20 minutes
Créer un jeu en 30 minutes avec PyGame
Annexes
Le livre est composé de cinq grandes parties :
• l’introduction qui est à mon avis bien trop longue : 110 pages sur l’histoire des langages informatiques ;
• la présentation de Python et pourquoi le choisir ;
• un ensemble de minitutoriels, puis le langage Python en lui-même ;
• la manipulation de données au travers de bibliothèques ;
• et à la fin, des projets permettant ainsi de consolider l’apprentissage.
Ce livre est progressif, bien expliqué et j’ai trouvé l’architecture des chapitres cohérente avec un apprentissage partant de zéro. Chaque nouvelle information sur le langage est accompagnée d’exemples concrets afin de mettre en pratique la richesse de ce langage.
C’est un très bon livre, que ce soit pour débuter ou pour se perfectionner.
Commenter Signaler un problème
La première partie du livre détaille les atouts de Python 3 pour répondre aux besoins des entreprises quel que soit le domaine informatique concerné.
La seconde partie est un guide à destination des débutants, que ce soit en Python ou en développement en général, elle permet d'aborder en douceur les concepts clés autour de projets servant de fil rouge et propose la réalisation de quelques exercices.
La troisième partie porte sur les fondamentaux du langage : les notions sont présentées progressivement avec des exemples de code qui illustrent chaque propos. L'auteur a souhaité que le lecteur atteigne une autonomie réelle dans son apprentissage, avec pour chaque notion présentée deux objectifs distincts : permettre à celui qui ne connaît pas la notion de se l'approprier correctement, notamment en respectant son rôle, et permettre à celui qui la connaît de trouver des angles d'attaques originaux pour aller le plus loin possible dans son exploitation.
La quatrième partie permet d'avoir un aperçu de l'utilisation des fonctionnalités de Python 3 pour la manipulation de fichiers ou de bases de données.
Enfin, la dernière partie de l'ouvrage est un vaste tutoriel qui permet de mettre en pratique, dans un cadre professionnel, tout ce qui a été vu précédemment en créant une application qui couvre tous les domaines courants du développement (données, Web avec Pyramid, interface graphique avec Gtk, script système...) et ainsi de présenter des solutions efficaces de développement utilisant Python 3.
Le code source des parties 2, 4 et 5 est intégralement téléchargeable sur le site www.editions-eni.fr pour permettre au lecteur de tester le programme et de le modifier à sa guise de manière à faire ses propres expériences.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Je n'ai pas lu le livre, mais je connais l'auteur qui est un collègue...
Pour le livre je ne peux juger, il me semble avoir entendu parler, de vouloir écrire une édition où il parlerait de Django, je ne sais pas si c'est le cas. Si oui c'est top !
Si non, il est possible qu'il réécrive peut-être pour Django spécifiquement.
Pour l'auteur, techniquement c'est très fort, et il est toujours à la recherches des pointes technologiques liées au langage Python.
Je pense donc que les lecteurs même de niveau intermédiaire risque d'apprendre pas mal de nouveautés et des tips sur le langage.
PYTHON. APPRENTISSAGE ACTIF
Pour l'étudiant et le futur enseignant
Résumé de l'éditeur
Les thèmes abordés ont été sélectionnés avec la conviction qu’une première approche assez simple, un pied à l’étrier, permettra un approfondissement personnel. Les enseignants y trouveront matière à problèmes et projets. Tous les exercices sont corrigés en ligne.
La version de Python 3 utilisée est celle d’Anaconda, destinée aux scientifiques. Les éditeurs de texte brièvement présentés sont IDLE, Spyder, ainsi que les notebooks de Jupyter, tous présents dans Anaconda qui contient aussi la plupart des logiciels scientifiques couramment utilisés (numpy, SAGE, etc). Il va de soi que le lecteur pourra coder néanmoins avec tout autre environnement familier de programmation. Nous utiliserons aussi le système Processing en mode Python, en ayant accès à des bibliothèques écrites en Java, langage dont la comparaison avec Python fait l’objet d’un chapitre particulier.
A tous les futurs codeurs, Hands on ! comme disent les anglo-saxons. Mettez les mains sur le clavier...
Édition : ELLIPSES - 342 pages, 1re édition, 3 mars 2020
ISBN10 : 234003664X - ISBN13 : 9782340036642
Solutions sur http://jean.paul.roy.free.fr
- L'essentiel du langage
- Environnement de programmation
- Variables, nombres et fonctions
- Traitement du texte : les bases
- Dessiner
- Les collections d'objets
- Les entrées-sorties
- Les objets et les classes
- Traitement avancé du texte
- Les interfaces graphies (GUI)
- De Java vers Python
- EXERCICES
- Nombres, fonctions, boucles
- Chaînes de caractères
- Graphisme de la tortue, Processing
- Les séquences
- Itérateurs, ensembles et dictionnaires
- Expressions regulières
- Fichiers, Web
- Objets
- Bibliographie
- Index
Sommaire complet : http://jean.paul.roy.free.fr/PAA/sommaire.pdf
Commenter Signaler un problème
Les thèmes abordés ont été sélectionnés avec la conviction qu’une première approche assez simple, un pied à l’étrier, permettra un approfondissement personnel. Les enseignants y trouveront matière à problèmes et projets. Tous les exercices sont corrigés en ligne.
La version de Python 3 utilisée est celle d’Anaconda, destinée aux scientifiques. Les éditeurs de texte brièvement présentés sont IDLE, Spyder, ainsi que les notebooks de Jupyter, tous présents dans Anaconda qui contient aussi la plupart des logiciels scientifiques couramment utilisés (numpy, SAGE, etc). Il va de soi que le lecteur pourra coder néanmoins avec tout autre environnement familier de programmation. Nous utiliserons aussi le système Processing en mode Python, en ayant accès à des bibliothèques écrites en Java, langage dont la comparaison avec Python fait l’objet d’un chapitre particulier.
A tous les futurs codeurs, Hands on ! comme disent les anglo-saxons. Mettez les mains sur le clavier...
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Python, Raspberry Pi et Flask
Capturez des données télémétriques et réalisez des tableaux de bord web
Résumé de l'éditeur
Pour tirer le meilleur profit de la lecture de ce livre, des notions de programmation orientée objet et quelques rudiments sur le langage Python et en électronique sont nécessaires. Une première expérience avec le Raspberry Pi et est également souhaitée.
Les points technologiques du livre sont isolés et vulgarisés avant d'être intégrés dans un projet global qui sert de fil conducteur à la prise en main et l'exploitation des différentes technologies étudiées. L'auteur commence par présenter la collecte de données à l'aide de composants basés sur un microcontrôleur ESP8266 programmé avec MicroPython. Il détaille ensuite la centralisation de ces données à l'aide d'un broker MQTT fonctionnant sur un Raspberry Pi. Dans la suite du livre, le lecteur découvre comment une base de données SQLite 3 permet d'offrir un stockage persistant des données et comment elle peut être exploitée par une application Flask pour produire des tableaux de bord sur mesure.
À l'issue de ce livre, le lecteur disposera de bases solides pour créer sereinement une grande variété de solutions, plus ou moins sophistiquées, en fonction de ses besoins.
Édition : ENI - 631 pages, 1re édition, 14 novembre 2018
ISBN10 : 2409016316 - ISBN13 : 9782409016318
- Présentation
- Le broker MQTT
- ESP8266 sous MicroPython
- Les objets ESP8266
- Persistance des données
- Développement web en Python
- Le tableau de bord
- Conclusion
- Annexes
Une fois un apprentissage sommaire effectué, tout lecteur pourra envisager de réaliser soi-même ce qui, il y a quelques années, aurait été un vrai projet pour un professionnel aguerri. Pour cela, l'auteur a sélectionné un ensemble de composants matériels (ESP8266, BMP280, etc.) et de bibliothèques utilisables via Python (ou parfois MicroPython pour être exact), telles que le framework Flask. Même les principes de fonctionnement d'un broker type MQTT y sont résumés.
On trouvera sûrement des ressources plus détaillées sur chaque brique prise individuellement. Mais à ma connaissance, cet ouvrage est probablement le livre francophone le plus complet à ce jour pour réaliser un projet ne nécessitant pas de fines subtilités dans les composants présentés ; chaque partie méritant à elle seule l'acquisition comme didacticiel pour un débutant.
Commenter Signaler un problème
Je vous invite à lire la critique que Nicolas Vallée a faite pour vous au sujet du livre :
Une fois un apprentissage sommaire effectué, tout lecteur pourra envisager de réaliser soi-même ce qui, il y a quelques années, aurait été un vrai projet pour un professionnel aguerri. Pour cela, l'auteur a sélectionné un ensemble de composants matériels (ESP8266, BMP280, etc.) et de bibliothèques utilisables via Python (ou parfois MicroPython pour être exact), telles que le framework Flask. Même les principes de fonctionnement d'un broker type MQTT y sont résumés.
On trouvera sûrement des ressources plus détaillées sur chaque brique prise individuellement. Mais à ma connaissance, cet ouvrage est probablement le livre francophone le plus complet à ce jour pour réaliser un projet ne nécessitant pas de fines subtilités dans les composants présentés ; chaque partie méritant à elle seule l'acquisition comme didacticiel pour un débutant. Lire la suite de la critique...
Capturez des données télémétriques et réalisez des tableaux de bord web
Pour tirer le meilleur profit de la lecture de ce livre, des notions de programmation orientée objet et quelques rudiments sur le langage Python et en électronique sont nécessaires. Une première expérience avec le Raspberry Pi et est également souhaitée.
Les points technologiques du livre sont isolés et vulgarisés avant d'être intégrés dans un projet global qui sert de fil conducteur à la prise en main et l'exploitation des différentes technologies étudiées. L'auteur commence par présenter la collecte de données à l'aide de composants basés sur un microcontrôleur ESP8266 programmé avec MicroPython. Il détaille ensuite la centralisation de ces données à l'aide d'un broker MQTT fonctionnant sur un Raspberry Pi. Dans la suite du livre, le lecteur découvre comment une base de données SQLite 3 permet d'offrir un stockage persistant des données et comment elle peut être exploitée par une application Flask pour produire des tableaux de bord sur mesure.
À l'issue de ce livre, le lecteur disposera de bases solides pour créer sereinement une grande variété de solutions, plus ou moins sophistiquées, en fonction de ses besoins.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Apprendre Python 3
Résumé de l'éditeur
Édition : Pearson Education - 210 pages, 1re édition, 12 décembre 2013
ISBN10 : 2744026115 - ISBN13 : 9782744026119
1 Le langage geek
2 Chiffrement
3 Chaînes sens dessus dessous
4 Suite de Fibronacci
5 L'héritage de l'atome
6 De père en fils
7 Client/serveur
8 Échange de fichiersen FTP
9 Exercice de synthèse
10 Trravail en parallèle
11 Bases de données
12 Température du jour
13 Les mails
14 Exercice de synthèse
15 Interface graphique
16 BeautifulSoup
17 Sérialisation
18 Exercices et solutions
Index
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Python 3
Les fondamentaux du langage
Résumé de l'éditeur
La première partie du livre détaille les atouts de Python 3 pour répondre aux besoins des entreprises quel que soit le domaine informatique concerné.
La seconde partie porte sur les fondamentaux du langage : les notions sont présentées progressivement avec des exemples de code qui illustrent chaque propos. L'auteur a souhaité que le lecteur atteigne une autonomie réelle dans son apprentissage, avec pour chaque notion présentée deux objectifs distincts : permettre à celui qui ne connaît pas la notion de se l'approprier correctement, notamment en respectant son rôle, et permettre à celui qui la connaît de trouver des angles d'attaques originaux pour aller le plus loin possible dans son exploitation.
La troisième partie permet de voir comment utiliser Python 3 pour résoudre des problématiques métiers et donc, comment utiliser tout ce qu'il y a autour de Python 3 (protocoles, serveurs, images, …). Dans cette partie, le fil conducteur est la fonctionnalité et non pas le module ; chaque chapitre se concentre sur la manière d'exploiter une fonctionnalité par l'utilisation d'un ou de plusieurs modules et présente une méthodologie, mais n'est pas centré sur une description anatomique des modules eux-mêmes. Les modules traités dans cette partie sont ceux qui ont été portés sous Python 3 ainsi que les fonctionnalités aujourd'hui matures pour cette dernière version du langage.
Enfin, la dernière partie de l'ouvrage est un vaste tutoriel qui permet de mettre en pratique, dans un cadre professionnel, tout ce qui a été vu précédemment en créant une application qui couvre tous les domaines courants du développement (données, Web avec Pyramid, interface graphique avec Gtk, script système...) et ainsi de présenter des solutions efficaces de développements utilisant Python 3.
Le code source de cette dernière partie est intégralement téléchargeable sur le site www.editions-eni.fr pour permettre au lecteur de tester le programme et de le modifier à sa guise de manière à faire ses propres expériences.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
Édition : ENI - 864 pages, 1re édition, 1er juin 2014
ISBN10 : 2746088592 - ISBN13 : 9782746088597
Il existe une deuxième édition depuis Mai 2016
Ce livre est bon, mais la quantité ne doit pas tromper. L'introduction en elle-même est déjà grande (rappel de l'historique des langages, paradigmes de programmation et comparaison avec les autres langages) et pourtant il n'y a pas d'explication sur comment lancer son premier programme. De la même manière, les EDI sont présentés en quelques phrases, mais l'auteur ne donne pas de direction. Il est évident que chacun d'entre nous possède ses goûts, mais pour les débutants, il peut être bon d'être dirigiste.
Aussi, un déséquilibre s'installe au cours de la lecture : est-ce que le livre cible des programmeurs connaissant le langage, ou des débutants ne connaissant pas la programmation ? La description du langage est très détaillée et donc abordable pour quelqu'un n'ayant pas d'expérience avec un langage de programmation. Toutefois, plusieurs fois l'ouvrage fait référence à d'autres langages (et même des notions) que n'aura pas un débutant. Chacune de ces mentions est un rappel montrant en quoi Python est meilleur.
De même, les exemples accompagnant les explications sont nombreux, mais il n'y a pas d'exercice récapitulatif, ou ne serait-ce que des exemples concrets (répondant à des besoins concrets de mise en pratique). Évidemment, le projet à la fin du livre pourrait répondre à cela, mais il est trop court, semblable à un hello world.
Finalement, ce livre risque de trôner sur votre bureau, tel un manuel de référence que vous ouvrirez pour vous remémorer telle ou telle chose sur le langage ou ses types de base. Aussi, si vous cherchez à faire une chose nouvelle avec le langage, le livre pourra servir de pointeur vous menant aux solutions adéquates. L'ouvrage ne suffira pas pour vous apprendre l'algorithmique et devra toujours être accompagné de documentation supplémentaire pour réaliser un projet.
Commenter Signaler un problème
La première partie du livre détaille les atouts de Python 3 pour répondre aux besoins des entreprises quel que soit le domaine informatique concerné.
La seconde partie porte sur les fondamentaux du langage : les notions sont présentées progressivement avec des exemples de code qui illustrent chaque propos. L'auteur a souhaité que le lecteur atteigne une autonomie réelle dans son apprentissage, avec pour chaque notion présentée deux objectifs distincts : permettre à celui qui ne connaît pas la notion de se l'approprier correctement, notamment en respectant son rôle, et permettre à celui qui la connaît de trouver des angles d'attaques originaux pour aller le plus loin possible dans son exploitation.
La troisième partie permet de voir comment utiliser Python 3 pour résoudre des problématiques métiers et donc, comment utiliser tout ce qu'il y a autour de Python 3 (protocoles, serveurs, images, …). Dans cette partie, le fil conducteur est la fonctionnalité et non pas le module ; chaque chapitre se concentre sur la manière d'exploiter une fonctionnalité par l'utilisation d'un ou de plusieurs modules et présente une méthodologie, mais n'est pas centré sur une description anatomique des modules eux-mêmes. Les modules traités dans cette partie sont ceux qui ont été portés sous Python 3 ainsi que les fonctionnalités aujourd'hui matures pour cette dernière version du langage.
Enfin, la dernière partie de l'ouvrage est un vaste tutoriel qui permet de mettre en pratique, dans un cadre professionnel, tout ce qui a été vu précédemment en créant une application qui couvre tous les domaines courants du développement (données, Web avec Pyramid, interface graphique avec Gtk, script système...) et ainsi de présenter des solutions efficaces de développements utilisant Python 3.
Le code source de cette dernière partie est intégralement téléchargeable sur le site www.editions-eni.fr pour permettre au lecteur de tester le programme et de le modifier à sa guise de manière à faire ses propres expériences.
Des éléments complémentaires sont en téléchargement sur le site www.editions-eni.fr.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Apprendre à programmer avec Python 3
Avec 60 pages d'exercices corrigés !
Résumé de l'éditeur
Original et stimulant, cet ouvrage aborde au travers d'exemples attrayants et concrets tous les fondamentaux de la programmation. L'auteur a choisi Python, langage moderne et élégant, aussi performant pour le développement d'applications web complexes que pour la réalisation de scripts système ou l'analyse de fichiers XML.
Un support de cours réputé et adopté par de nombreux enseignants, avec 60 pages d'exercices corrigés
Reconnu et utilisé par les enseignants de nombreuses écoles et IUT, complété d'exercices accompagnés de leurs corrigés, cet ouvrage original et érudit est une référence sur tous les fondamentaux de la programmation : choix d'une structure de données, paramétrage, modularité, orientation objet et héritage, conception d'interface, multithreading et gestion d'événements, protocoles de communication et gestion réseau, bases de données... jusqu'à la désormais indispensable norme Unicode (le format UTF-8). On verra notamment la réalisation avec Python 3 d'une application web interactive et autonome, intégrant une base de données SQLite. Cette nouvelle édition traite de la possibilité de produire des documents imprimables (PDF) de grande qualité en exploitant les ressources combinées de Python 2 et Python 3.
A qui s'adresse ce livre ?
Aux étudiants en BTS et IUT Informatique et à leurs enseignants ;
À tous les autodidactes férus de programmation qui veulent découvrir le langage Python.
Retrouvez une version numèrique du livre sur Developpez !
Édition : Eyrolles - 1 pages, 3e édition, 12 février 2013
ISBN10 : 2212134347 - ISBN13 : 9782212134346
Premiers pas
Contrôle du flux d'exécution
Instructions répétitives
Principaux types de données
Fonctions prédéfinies
Fonctions originales
Utilisation de fenêtres et de graphismes
Manipuler des fichiers
Approfondir les structures de données
Classes, objets, attributs
Classes, méthodes, héritage
Classes et interfaces graphiques
Et pour quelques widgets de plus...
Analyse de programmes concrets
Gestion d'une base de données
Applications web
Imprimer avec Python
Communications à travers un réseau et multithreading
Annexe A. Installation de Python
Annexe B. Solutions des exercices
Commenter Signaler un problème
Original et stimulant, cet ouvrage aborde au travers d'exemples attrayants et concrets tous les fondamentaux de la programmation. L'auteur a choisi Python, langage moderne et élégant, aussi performant pour le développement d'applications web complexes que pour la réalisation de scripts système ou l'analyse de fichiers XML.
Un support de cours réputé et adopté par de nombreux enseignants, avec 60 pages d'exercices corrigés
Reconnu et utilisé par les enseignants de nombreuses écoles et IUT, complété d'exercices accompagnés de leurs corrigés, cet ouvrage original et érudit est une référence sur tous les fondamentaux de la programmation : choix d'une structure de données, paramétrage, modularité, orientation objet et héritage, conception d'interface, multithreading et gestion d'événements, protocoles de communication et gestion réseau, bases de données... jusqu'à la désormais indispensable norme Unicode (le format UTF-8). On verra notamment la réalisation avec Python 3 d'une application web interactive et autonome, intégrant une base de données SQLite. Cette nouvelle édition traite de la possibilité de produire des documents imprimables (PDF) de grande qualité en exploitant les ressources combinées de Python 2 et Python 3.
A qui s'adresse ce livre ?
Aux étudiants en BTS et IUT Informatique et à leurs enseignants ;
À tous les autodidactes férus de programmation qui veulent découvrir le langage Python.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Voir aussi les Cours et tutoriels pour apprendre la programmation Python: https://python.developpez.com/cours/
J'espère que vous supportez bien le confinement actuel.
Je ne sais pas si l'épidémie actuelle en est la cause, mais cet ouvrage (que je souhaite acheter) n'est accessible qu'à des tarifs exagérés sur internet (voir sur le site amazon par exemple).
Certes, sa version numérique est accessible sur developpez.net
Mais j'aimerais bien acquérir une version papier....
Avez vous des 'pistes' ?
Sera-t-il réédité prochainement ?
Je vous remercie d'avance.
Je pense lire celui-ci, j'ai besoin d'apprendre le Python alors autant partir sur un cours bien épais et bien écrit héhé
Python - Précis et concis
5e édition
Résumé de l'éditeur
Édition : Dunod - 272 pages, 5e édition, 16 août 2017
ISBN10 : 2100759450 - ISBN13 : 9782100759453
- Types d'objets intégrés (nombres, lkistes, dictionnaires, etc.)
- Instructions et syntaxe pour la création et le traitement des objets
- Fonctions et modules pour structurer et réutiliser le code
- Outils Python de programmation orientée objet
- Fonctions intégrées, exceptions et attributs
- Méthodes de surchargement d'opérateurs
- Modules et extensions de bibliothèques standard largement répandus
- Options de la ligne de commande et outils de développement
- Astuces Python
- API Python de base de données SQL
Ainsi, le livre pourra être utilisé par un programmeur expérimenté pour prendre en main rapidement le langage. En effet, ce dernier est décrit de manière théorique. Il faudra donc une connaissance de la programmation et une certaine aisance dans la matière est nécessaire pour pouvoir l’utiliser comme tel. Afin de donner tous les éléments nécessaires pour démarrer correctement, le livre se termine sur une description des outils pour manipuler les fichiers, communiquer sur le réseau ou encore réaliser une interface graphique avec Tkinter.
Sinon, cet ouvrage sera votre référence dans laquelle vous vous plongerez pour revoir les capacités de Python et comment les utiliser. Par ailleurs, on peut se demander si un tel livre est encore utile dans des jours où Internet est quasi omniprésent, d’autant plus que la documentation officielle est complète et que les exemples ne manquent pas, alors que ce livre n’en donne que très peu. Évidemment, en voyage, ce livre vous permettra de continuer vos développements sans craindre le blocage quant aux fonctionnalités du langage. Aussi, le support papier peut être un plus pour certains lecteurs.
Finalement, la lecture de l’ouvrage est malheureusement alourdie par la présence de nombreuses coquilles, surtout dans la seconde moitié du livre.
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Python - Précis et concis
3e édition
Résumé de l'éditeur
Édition : O'Reilly - 164 pages, 3e édition, 23 juin 2005
ISBN10 : 2841773604 - ISBN13 : 9782841773602
- Ligne de commande
- Variables d'environnement
- Types et opérateurs prédéfinis
- Particularités des types prédéfinis
- Instructions et syntaxe
- Instructions spécifiques
- Visibilité et espace de nommage
- Programmation orientée objet
- Surcharge des opérateurs
- Fonctions internes prédéfinies
- Exceptions internes prédéfinies
- Attributs prédéfinis
- Modules prédéfinis
- Le module prédéfinis
- Le module sys
- Le module string
- Le module système os
- Le module des expressions régulières re
- Modules pour la persistance des données
- Le module graphique Tkinter et ses outils
- Modules et outils Internet
- Autres modules intégrés
- API portable pour l'accès aux bases de données SQL
- Conseils et tournures Python
- Modules et outils Internet
- Autres modules intégrés
- API portable pour l'accès aux bases de données SQL
- Conseils et tournures Python
Tous les modules, objets, fonctions sont accompagnés d'une explication succincte (de quelques lignes à une bonne dizaine) mais efficace, de quoi comprendre aisément comment l'utilisation de l'instance étudiée;
Ce livre permet donc d'avoir un aperçu rapide en quelques pages du potentiel de chaque module. Grâce à un sommaire précis et un index en fin de livre, vous pourrez retrouver rapidement les informations recherchées.
Le faible poids et le petit format vous permettra de le transporter partout (contrairement à Python en Concentré (que je recommande vivement) mais beaucoup plus complet). Il vous sera d'autant plus utile que vous n'avez pas accès à internet et à la Library Reference.
Commenter Signaler un problème
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Algorithmique & Calcul numérique
Licences et Prépa
Résumé de l'éditeur
- algorithmique et arithmétique,
- approximation de solutions d’équations et suites numériques,
- résolution numérique d’équations différentielles,
- calcul matriciel et calcul intégral.
Les techniques algorithmiques employées sont présentées (résolution d’une grille de Sudoku 9 x 9, tri par sélection, tri à bulles, cryptographie : le carré de Polybe, fractales : ensembles de Mandelbrot et de Julia) et les méthodes numériques utilisées sont détaillées (méthode d’Euler, méthode de dichotomie, méthode de Newton, méthode de Héron, modèle proie-prédateur, méthode d’élimination de Gauss, méthode de décomposition LU d’une matrice, calcul numérique d’une intégrale). Toutes les formules à utiliser sont rappelées afin de donner l’ensemble des outils nécessaires à la réalisation des travaux pratiques.
Les programmes sont écrits en langages Scilab et Python. Scilab et Python sont des logiciels libres fournissant un environnement de calcul numérique pour des applications scientifiques.
Les fonctions Scilab et Python utilisées dans les travaux pratiques sont détaillées en annexe de l’ouvrage. Des exemples d’utilisation de ces fonctions sont également proposés.
De par la mise en œuvre d’algorithmes et de programmes Scilab et Python, cet ouvrage est un complément pratique aux cours théoriques relatifs aux méthodes numériques. Il constitue une ressource particulièrement adaptée pour les étudiants des classes préparatoires, de licence, d’I.U.T., les enseignants et les candidats aux concours comportant des épreuves pratiques d’algorithmique et de programmation.
D’autres ressources Scilab et Python ainsi que les codes-sources des programmes de cet ouvrage sont disponibles sur le site de l’auteur : www.joseouin.fr
Édition : Ellipses - 192 pages, 1re édition, 6 août 2013
ISBN10 : 2729881069 - ISBN13 : 9782729881061
- L’algorithmique
- Introduction à l'algorithmique
- Définition de l'algorithmique
- Algorithmique et programmation
- Un algorithme puis un programme
- Les éléments de base d'un algorithme
- Les conventions d'écriture d'un algorithme
- Un algorithme puis un programme
- Définition de l'algorithmique
- Les instructions
- Les instructions pour traiter les données
- L'affectation de données dans des variables
- La lecture (ou entrée) des données
- L'écriture (ou sortie) des données
- L'affectation de données dans des variables
- Les instructions ou structures de contrôle
- La structure alternative
- Les structures répétitives
- Indentation nécessaire en langage Python
- La structure alternative
- Les instructions pour traiter les données
- Introduction à l'algorithmique
- Le logiciel Scilab
- Présentation du logiciel
- Téléchargement du logiciel
- L’environnement Scilab
- La console
- L'éditeur SciNotes
- Les fenêtres graphiques
- Les autres éléments de l'environnement
- La console
- Présentation du logiciel
- Le logiciel Python
- Présentation du logiciel
- Téléchargement du logiciel
- Téléchargement des modules
- Modules Numpy et Scipy
- Module Matplotlib
- Modules Numpy et Scipy
- L’environnement Python
- La console et l'éditeur
- Les fenêtres graphiques
- La console et l'éditeur
- Editeur de texte : Python Scripter
- Présentation de Python Scripter
- Téléchargement de Python Scripter
- Présentation de Python Scripter
- Installation du logiciel Python
- Présentation de l'installation
- Les étapes de l'installation : logiciel, modules et éditeur
- Présentation de l'installation
- Présentation du logiciel
- Les travaux pratiques
- Algorithmique et Arithmétique
- Résolution d’une grille de Sudoku (9x9)
- Tri par sélection et tri à bulles
- Cryptographie – Le carré de Polybe
- Couples d'entiers amicaux
- Conjecture d'Erdös-Straus
- Résolution d’une grille de Sudoku (9x9)
- Approximation de solutions d'équations et suites numériques
- Ensembles de Mandelbrot et de Julia
- Méthode de dichotomie
- Méthode de Newton
- Approximation d'une racine carrée – Méthode de Héron
- Détermination de la constante d'Euler-Mascheroni
- Point fixe et suite définie par récurrence
- Ensembles de Mandelbrot et de Julia
- Résolution numérique d’équations différentielles
- Approximation de la fonction exponentielle par la méthode d'Euler
- Etude d'un circuit RC
- Etude de la chute libre d'un parachutiste
- Modèle proie-prédateur – Equations de Lotka-Volterra
- Résolution d'une équation différentielle d'ordre 2
- Approximation de la fonction exponentielle par la méthode d'Euler
- Calcul matriciel et calcul intégral
- Méthode d'élimination de Gauss
- Résolution d'un système UX = B
- Résolution d'un système LX = B
- Résolution d'un système par la méthode d'élimination de Gauss
- Méthode de décomposition LU – Algorithme de Doolittle
- Résolution d'un système AX = B par décomposition LU
- Approximation d'une intégrale
- Méthode d'élimination de Gauss
- Algorithmique et Arithmétique
- Les instructions et fonctions du langage Scilab
- Les instructions et fonctions du langage Python
Commenter Signaler un problème
- algorithmique et arithmétique,
- approximation de solutions d’équations et suites numériques,
- résolution numérique d’équations différentielles,
- calcul matriciel et calcul intégral.
Les techniques algorithmiques employées sont présentées (résolution d’une grille de Sudoku 9 x 9, tri par sélection, tri à bulles, cryptographie : le carré de Polybe, fractales : ensembles de Mandelbrot et de Julia) et les méthodes numériques utilisées sont détaillées (méthode d’Euler, méthode de dichotomie, méthode de Newton, méthode de Héron, modèle proie-prédateur, méthode d’élimination de Gauss, méthode de décomposition LU d’une matrice, calcul numérique d’une intégrale). Toutes les formules à utiliser sont rappelées afin de donner l’ensemble des outils nécessaires à la réalisation des travaux pratiques.
Les programmes sont écrits en langages Scilab et Python. Scilab et Python sont des logiciels libres fournissant un environnement de calcul numérique pour des applications scientifiques.
Les fonctions Scilab et Python utilisées dans les travaux pratiques sont détaillées en annexe de l’ouvrage. Des exemples d’utilisation de ces fonctions sont également proposés.
De par la mise en œuvre d’algorithmes et de programmes Scilab et Python, cet ouvrage est un complément pratique aux cours théoriques relatifs aux méthodes numériques. Il constitue une ressource particulièrement adaptée pour les étudiants des classes préparatoires, de licence, d’I.U.T., les enseignants et les candidats aux concours comportant des épreuves pratiques d’algorithmique et de programmation.
D’autres ressources Scilab et Python ainsi que les codes-sources des programmes de cet ouvrage sont disponibles sur le site de l’auteur : www.joseouin.fr
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Algorithmique & Programmation par la pratique
Travaux pratiques résolus et programmation avec les logiciels Scilab et Python
Résumé de l'éditeur
Les méthodes numériques utilisées sont détaillées et les formules à utiliser sont rappelées afin de donner l’ensemble des outils nécessaires à la réalisation des travaux pratiques. Les programmes sont écrits en langage Scilab et Python qui sont deux logiciels libres fournissant un environnement de calcul numérique pour des applications scientifiques. Les fonctions Scilab et Python utilisées dans les travaux pratiques sont détaillées en annexe de l’ouvrage. Des exemples d’utilisation de ces fonctions sont également proposés.
Cet ouvrage s’adresse également à tous ceux qui sont intéressés par l’approche de problèmes concrets, à l’aide de programmes informatiques, ne nécessitant pas de connaissances approfondies en mathématiques. Il aborde, notamment, une méthode simple de calcul des décimales de nombres irrationnels tels que Pi, le nombre d’or, l’exponentielle, le logarithme et la racine carrée.
Édition : Ellipses - 240 pages, 1re édition, 31 octobre 2017
ISBN10 : 2340022479 - ISBN13 : 9782340022478
Commenter Signaler un problème
Travaux pratiques résolus et programmation avec les logiciels Scilab et Python
Les méthodes numériques utilisées sont détaillées et les formules à utiliser sont rappelées afin de donner l’ensemble des outils nécessaires à la réalisation des travaux pratiques. Les programmes sont écrits en langage Scilab et Python qui sont deux logiciels libres fournissant un environnement de calcul numérique pour des applications scientifiques. Les fonctions Scilab et Python utilisées dans les travaux pratiques sont détaillées en annexe de l’ouvrage. Des exemples d’utilisation de ces fonctions sont également proposés.
Cet ouvrage s’adresse également à tous ceux qui sont intéressés par l’approche de problèmes concrets, à l’aide de programmes informatiques, ne nécessitant pas de connaissances approfondies en mathématiques. Il aborde, notamment, une méthode simple de calcul des décimales de nombres irrationnels tels que Pi, le nombre d’or, l’exponentielle, le logarithme et la racine carrée.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
Ce livre "Algorithmique & Programmation par la pratique" s'adresse aux élèves et aux enseignants du lycée.
Je poste un lien vers un fichier PDF qui vous donnera une idée plus précise du contenu.
Le voici : Extraits du livre
Bonne journée à tous.
Django
Industrialisez vos développements Python
Résumé de l'éditeur
L'auteur propose une prise en main efficace de Django et conduit progressivement le lecteur à la maîtrise de bases solides sur la conception de projets Django, du développement au déploiement en production.
Une introduction présente les frameworks web en général et Django en particulier, son historique, sa communauté et ses avantages et permet de comprendre les raisons de sa popularité. L'auteur propose ensuite une prise en main de Django puis détaille ses principes techniques et enfin les outils de développement et les IDE qui permettent de travailler avec Django encore plus facilement.
Une série de chapitres couvre les principales notions de Django : la structure d'un projet, l'ORM, les vues et le routage des urls, les templates, le middelware. Un chapitre spécifique traite du puissant outil de création d'applications de type Back Office qu'est l'administration Django.
Enfin, l'auteur conclut le livre par deux chapitres relatifs aux approfondissements et à l'utilisation d'applications Django existantes dans vos projets.
Le lecteur pourra télécharger sur le site www.editions-eni.fr, le projet résultat du tutoriel décrit dans le livre et un projet de réservation de salles avec intégration d'une application tierce.
Édition : ENI - 720 pages, 1re édition, 15 mars 2015
ISBN10 : 2746092700 - ISBN13 : 9782746092709
- Avant-propos
- Présentation du framework Django
- Pour débuter
- Les outils de développement
- Structure d'un projet et des applications
- L'ORM et les modèles Django
- Les requêtes HTTP, les URL et les vues
- Les templates
- Le middleware Django
- L'administration de Django
- Les formulaires Django
- La traduction et la localisation
- Approfondissements
- Les applications Django
Commenter Signaler un problème
L'auteur propose une prise en main efficace de Django et conduit progressivement le lecteur à la maîtrise de bases solides sur la conception de projets Django, du développement au déploiement en production.
Une introduction présente les frameworks web en général et Django en particulier, son historique, sa communauté et ses avantages et permet de comprendre les raisons de sa popularité. L'auteur propose ensuite une prise en main de Django puis détaille ses principes techniques et enfin les outils de développement et les IDE qui permettent de travailler avec Django encore plus facilement.
Une série de chapitres couvre les principales notions de Django : la structure d'un projet, l'ORM, les vues et le routage des urls, les templates, le middelware. Un chapitre spécifique traite du puissant outil de création d'applications de type Back Office qu'est l'administration Django.
Enfin, l'auteur conclut le livre par deux chapitres relatifs aux approfondissements et à l'utilisation d'applications Django existantes dans vos projets.
Le lecteur pourra télécharger sur le site www.editions-eni.fr, le projet résultat du tutoriel décrit dans le livre et un projet de réservation de salles avec intégration d'une application tierce.
[Lire la suite]
- Avez-vous lu ce livre ou pensez-vous le lire ?
- Souhaitez-vous ajouter une critique de ce livre sur la page de la rubrique ?
- Avez-vous un commentaire à faire ?
The Definitive Guide to Jython
Résumé de l'éditeur
The Definitive Guide to Jython, written by the official Jython team leads, covers the latest Jython 2.5 (or 2.5.x) from the basics to the advanced features. This book begins with a brief introduction to the language and then journeys through Jython's different features and uses.
The Definitive Guide to Jython is organized for beginners as well as advanced users of the language. The book provides a general overview of the Jython language itself, but it also includes intermediate and advanced topics regarding database, web, and GUI applications; Web services/SOA; and integration, concurrency, and parallelism, to name a few.
Édition : APress - 544 pages, 1re édition, 22 février 2010
ISBN10 : 1430225270 - ISBN13 : 9781430225270
- Chapter 1: Language and Syntax 3
- Chapter 2: Data Types and Referencing
- Chapter 3: Operators, Expressions, and Program Flow
- Chapter 4: Defining Functions and Using Built-ins
- Chapter 5: Input and Output
- Chapter 6: Object-Oriented Jython
- Chapter 7: Exception Handling and Debugging
- Chapter 8: Modules and Packages for Code Reuse
Part II: Using the Language
- Chapter 9: Scripting With Jython
- Chapter 10: Jython and Java Integration
- Chapter 11: Using Jython in an IDE
- Chapter 12: Databases and Jython: Object Relational Mapping and Using JDBC
Part III: Developing Applications with Jython
- Chapter 13: Simple Web Applications
- Chapter 14: Web Applications With Django
- Chapter 15: Introduction to Pylons
- Chapter 16: GUI Applications
- Chapter 17: Deployment Targets
Part IV:Strategy and Technique
- Chapter 18: Testing and Continuous Integration
- Chapter 19: Concurrency
Part V: Appendicies and Attribution
- Appendix A: Using Other Tools with Jython
- Appendix B: Jython Cookbook
- Appendix C: Built-in Functions
The Definitive Guide to Jython s'adresse tant aux programmeurs débutants avec Python qu'aux développeurs qui seraient intéressés à scripter la plateforme Java à l'aide de Python. Il s'agit d'un très bon choix pour les débutants désirant apprendre ce langage sans nécessairement avoir un intérêt spécifique pour Jython. Pour les programmeurs Java, Jython offre un langage de scripts facile à apprendre qui permet une plus grande interactivité avec la plateforme Java et la possibilité de remplacer facilement certains outils qui manquent parfois de flexibilité (par exemple Ant). Finalement, les programmeurs Python peuvent voir en Jython un portail vers une vaste quantité de librairies, la possibilité d'approcher une clientèle corporative ainsi qu'un moyen pour atteindre de meilleures performances.
Je vais faire un survol des différents chapitres pour vous donner un aperçu du contenu du livre et terminer avec mes impressions personnelles pour le mot de la fin. Pour plus de détails, vous pouvez accéder à l'entièreté du livre en ligne à http://www.jython.org/jythonbook/en/1.0/. Cool ! N'est-ce pas ?
La première partie, les chapitres 1 à 8, porte sur le langage. Tout ce qui y est écrit s'applique également à la version C de Python à l'exception des chapitres 7 et 8 qui discutent de certaines spécificités propres à Jython.
Chapitre 1 Language and Syntax : Ce chapitre fait un survol rapide du langage.
Chapitre 2 Data Types and Referencing : Ici, on parle des différents types (entier, chaîne de caractères, liste, ensemble, dictionnaire), de leurs méthodes et comment les manipuler.
Chapitre 3 Operators, Expressions and Program Flow : Le titre dit bien de quoi il s'agit soit comment créer des expressions à l'aide des opérateurs et comment se servir de tout cela pour contrôler l'exécution du code.
Chapitre 4 Defining functions and using built-ins : Chapitre sur les fonctions, les générateurs, les décorateurs et les espaces de nommage. On montre, entre autres, comment se servir des coroutines.
Chapitre 5 Input and Output : Court chapitre sur la saisie clavier, les modes de lecture de fichiers, les méthodes de base, l'encodage et le formatage en sortie.
Chapitre 6 Object-Oriented Jython : Un chapitre sur les classes, la redéfinition et la surcharge de méthodes, les méthodes spéciales, les méthodes privées, le passage de paramètres et les arguments par défaut.
Chapitre 7 Exception Handling and Debugging : Un chapitre sur les exceptions, les différences avec le langage Java, la hiérarchie des différentes exceptions définies par le langage, une présentation du module warnings, les assertions et l'usage de with.
Chapitre 8 Modules and Packages for Code Reuse : Ici on parle de comment assembler le code en modules en parquetages. On y décrit les différents types d'importations, à quel moment les fichiers __init__ sont exécutés, les chemins d'accès (CLASSPATH et sys.path), la compilation et le chargement des modules. C'est un chapitre très complet et on va jusqu'à décrire comment il est possible d'ajouter de nouveaux systèmes de chargement de code.
La deuxième partie, les chapitres 9 à 12, est consacrée à la mise en application du langage. Voyons ce qu'on nous présente.
Chapitre 9 Scripting With Jython : Ce chapitre montre comment créer un script, comment traiter les arguments qui peuvent être passés en paramètres, comment naviguer dans un système de fichiers et il présente également comment Python peut servir d'outil pour compiler du code Java.
Chapitre 10 Jython and Java Integration : Voici un des chapitres que j'attendais avec beaucoup d'impatience. Il s'agit du chapitre consacré à l'interopérabilité du code Python avec Java. Employer le code Java du côté Python est très facile. Essentiellement, on importe le code Java comme on importerait un module Python. Cette facilité à employer le code Java en Python est certainement une grande réussite pour Jython. Par contre, faire l'inverse, employer le code Python du côté Java s'avère plus difficile. Le livre procède en présentant quelques techniques à l'aide d'exemples mais je trouve que la théorie se fait pauvre. Ce chapitre fait aussi mention de la JSR-223 et de comment employer directement l'interpréteur Python depuis Java.
Chapitre 11 Using Jython in an IDE : Ici un chapitre pratique sur l'emploi d'Eclipse et de Netbeans avec Jython. Malheureusement, bien que pratique pour certains, c'est un chapitre qui risque de devenir désuet rapidement tant les outils que l'implémentation du langage évoluent rapidement.
Chapitre 12 Databases and Jython (Object Relational Mapping and Using JDBC) : Ce chapitre traite principalement de ZxJDBC : un pont entre les API standard DBI de Python et l'interface JDBC de Java. Un sujet complexe qui est quand même bien couvert malgré le peu de pages qui lui est consacré. Quelques exemples d'accès aux bases de données y sont présentés. On fait mention de SqlAlchemy et d'Hibernate parmi les exemples.
La troisième partie s'intitule "Developing Applications with Jython". On présente comment intégrer Jython avec les servlets Java avec Django et Pylons ainsi que de l'intégration avec les composantes d'interfaces graphiques Swing de Java.
Chapitre 13 Simple Web Applications : Un chapitre qui montre comment on peut créer des servlets avec Jython. En y montrant aussi comment on peut créer une application Java Web Start ainsi que des archives jar autoéxécutables. Pour terminer, on montre comment il est possible d'embarquer un serveur WSGI en tant que simple servlet.
Chapitre 14 Web Applications With Django : Courte introduction à Django.
Chapitre 15 Introduction to Pylons : Oui, c'est une introduction à Pylons.
Chapitre 16 GUI Applications : Une introduction à Swing. Une petite application de messagerie instantanée est présentée en exemple.
Chapitre 17 Deployment Targets : Un court chapitre qui discute du déploiement sur différents serveurs Java et de Google App Engine ainsi que des problèmes qui peuvent survenir dans ce contexte. Un chapitre qui deviendra rapidement caduc mais qui est quand même utile.
Quatrième et dernière partie "Strategy and Technique". Cette partie traite des tests unitaires et de la concurrence.
Chapitre 18 Testing and Continuous Integration : Un chapitre étoffé sur l'utilisation des tests unitaires avec UnitTest et Nose présentés avec des exemples. On termine avec l'intégration continue à l'aide d'Hudson.
Chapitre 19 Concurrency : Le dernier chapitre est lui aussi très riche. Il porte sur les threads, leur emploi et sur différentes techniques pour bien gérer la concurrence. On y parle des différences entre Jython et la version C de Python.
Le livre se termine sur trois annexes très intéressantes. L'annexe A porte sur les spécificités de Jython et sa configuration. On présente comment il s'intègre avec Setuptools et Virtualenv. L'annexe B donne quelques recettes. Essentiellement, on présente des exemples sur l'emploi de librairies populaires du côté Java. La dernière annexe, C, est un index des fonctions standard du langage.
En bref, The Definitive Guide to Jython offre énormément de contenu en cinq cents pages. Beaucoup de matériel est couvert avec des exemples poussés. Le seul regret que j'ai c'est que le chapitre 10 sur l'interopérabilité du code entre Java et Python aurait dû à mon avis être plus détaillé. À part cet inconvénient, je ne peux que chaudement recommander ce livre aux développeurs Python et inviter les développeurs Java à découvrir ce que Python peut leur offrir.
Merci à Simon Yu d'Apress pour m'avoir offert ce livre.
Le Python en bref
Résumé de l'éditeur
Cette vision de l'apprentissage a abouti à l'écriture de ce condensé PYTHON, conçu à la fois comme une aide à l'apprentissage, mais également comme un aide-mémoire du langage.
Langage interprété multifonctions, PYTHON peut apparaître comme un véritable couteau suisse capable de servir à réaliser aussi bien du scripting sur serveur que des logiciels avec interface graphique.
Ainsi, après une brève présentation des principales différences entre langage compilé et langage interprété puis du principe de programmation objet, l'auteur vous présentera le langage de manière simplifiée.
Chaque explication est documentée d'un exemple visant à créer une mise en situation et à améliorer la compréhension.
Édition : ILV-Edition - 423 pages, 1re édition, 15 avril 2013
ISBN10 : 2352096588 - ISBN13 : 9782352096580
- Présentation
- La Programmation Orientée Objet
- Le Langage Python
- Modules complémentaires
- Les Interfaces graphiques
- La 3D
- Gestion d'un projet
- Déploiement
- Ressources
- Annexes
Il faut signaler que très rapidement, les exemples sont orientés "graphique".
Quelques légers soucis avec l'ouvrage
- la partie "Licences logicielles" ne présente en fait que la GPL. Glisser un mot sur la version LGPL aurait sûrement été appréciée ;
- il en va de même pour la partie "Licences documentaires" qui se borne à la Creative Commons ;
- le passage sous silence des itérateurs me laisse pensif...
Dernier point à souligner : l'ouvrage est consultable gratuitement en ligne. Seule la version livre est payante. Ceci est un point positif pour les débutants, cible principale de l'ouvrage selon moi.
Commenter Signaler un problème
La rubrique Python a le plaisir de vous proposer Le Python en bref, un ouvrage d'Alexandre Galodé
En effet, tantôt nous avons besoin d'un langage procédural, tantôt d'un langage objet ; tantôt d'un langage de script, tantôt d'un langage avec IHM...
C'est à ce niveau que Python est intéressant. En effet, ce langage sait s'adapter à de nombreuses situations. Capable de créer des clients lourds ou légers, des applications standards ou mobiles, il sait tout faire.
De plus, langage Open Source par excellence, ce langage bénéficie d'une très large communauté et d'appuis sérieux et solides telle la société Google qui s'en sert comme langage principal, la NASA ou encore de nombreux logiciels Open Source reconnus comme Blender.
Prenant de plus en plus d'ampleur dans l'univers de la programmation, Python remplace peu à peu ceux qui avaient la préférence dans de nombreux établissements informatiques, car contrairement à d'autres, Python ne nécessite nullement de multiples mises à jour par mois. Chaque évolution est mûrement réfléchie avant d'être déployée.
Cet ouvrage est conçu à la fois comme un condensé d'informations pour apprendre Python, mais également comme un aide-mémoire toujours utile à avoir sous la main.
Note : Cet ouvrage a été conçu sous Linux, et par conséquent, certains exemples peuvent ne pas fonctionner sous d'autre OS.
Voir aussi les Cours et tutoriels pour apprendre la programmation Python
Bonne lecture.
Avez-vous lu ce livre, pensez-vous le lire ?
Je viens de parcourir un à un tout les chapitres sur le pdf.
J'aime bien
Sur le fond car, par exemple, la présentation des librairies va à l'essentiel car au final pour démarrer c'est ce qu'il faut
Sur la forme : les couleurs les cadres sont plaisant et fonctionnels.
Alex
Programming Python
Résumé de l'éditeur
You'll learn language syntax and programming techniques in a clear and concise manner, with lots of examples that illustrate both correct usage and common idioms. Completely updated for version 3.x, Programming Python also delves into the language as a software development tool, with many code examples scaled specifically for that purpose.
Topics include:
- Quick Python tour: Build a simple demo that includes data representation, object-oriented programming, object persistence, GUIs, and website basics
- System programming: Explore system interface tools and techniques for command-line scripting, processing files and folders, running programs in parallel, and more
- GUI programming: Learn to use Python's tkinter widget library
- Internet programming: Access client-side network protocols and email tools, use CGI scripts, and learn website implementation techniques
- More ways to apply Python: Implement data structures, parse text-based information, interface with databases, and extend and embed Python
Édition : O'Reilly - 1632 pages, 1er janvier 2011
ISBN10 : 0596158106 - ISBN13 : 9780596158101
- Chapter 1: A Sneak Preview
- "Programming Python: The Short Story"
- The Task
- Step 1: Representing Records
- Step 2: Storing Records Persistently
- Step 3: Stepping Up to OOP
- Step 4: Adding Console Interaction
- Step 5: Adding a GUI
- Step 6: Adding a Web Interface
- The End of the Demo
System Programming
- Chapter 2: System Tools
- "The os.path to Knowledge"
- System Scripting Overview
- Introducing the sys Module
- Introducing the os Module
- Chapter 3: Script Execution Context
- "I'd Like to Have an Argument, Please"
- Current Working Directory
- Command-Line Arguments
- Shell Environment Variables
- Standard Streams
- Chapter 4: File and Directory Tools
- "Erase Your Hard Drive in Five Easy Steps!"
- File Tools
- Directory Tools
- Chapter 5: Parallel System Tools
- "Telling the Monkeys What to Do"
- Forking Processes
- Threads
- Program Exits
- Interprocess Communication
- The multiprocessing Module
- Other Ways to Start Programs
- A Portable Program-Launch Framework
- Other System Tools Coverage
- Chapter 6: Complete System Programs
- "The Greps of Wrath"
- A Quick Game of "Find the Biggest Python File"
- Splitting and Joining Files
- Generating Redirection Web Pages
- A Regression Test Script
- Copying Directory Trees
- Comparing Directory Trees
- Searching Directory Trees
- Visitor: Walking Directories "++"
- Playing Media Files
- Automated Program Launchers (External)
GUI Programming
- Chapter 7: Graphical User Interfaces
- "Here's Looking at You, Kid"
- Python GUI Development Options
- tkinter Overview
- Climbing the GUI Learning Curve
- tkinter Coding Alternatives
- Adding Buttons and Callbacks
- Adding User-Defined Callback Handlers
- Adding Multiple Widgets
- Customizing Widgets with Classes
- Reusable GUI Components with Classes
- The End of the Tutorial
- Python/tkinter for Tcl/Tk Converts
- Chapter 8: A tkinter Tour, Part 1
- "Widgets and Gadgets and GUIs, Oh My!"
- Configuring Widget Appearance
- Top-Level Windows
- Dialogs
- Binding Events
- Message and Entry
- Checkbutton, Radiobutton, and Scale
- Running GUI Code Three Ways
- Images
- Viewing and Processing Images with PIL
- Chapter 9: A tkinter Tour, Part 2
- "On Today's Menu: Spam, Spam, and Spam"
- Menus
- Listboxes and Scrollbars
- Text
- Canvas
- Grids
- Time Tools, Threads, and Animation
- The End of the Tour
- Chapter 10: GUI Coding Techniques
- "Building a Better Mousetrap"
- GuiMixin: Common Tool Mixin Classes
- GuiMaker: Automating Menus and Toolbars
- ShellGui: GUIs for Command-Line Tools
- GuiStreams: Redirecting Streams to Widgets
- Reloading Callback Handlers Dynamically
- Wrapping Up Top-Level Window Interfaces
- GUIs, Threads, and Queues
- More Ways to Add GUIs to Non-GUI Code
- The PyDemos and PyGadgets Launchers
- Chapter 11: Complete GUI Programs
- "Python, Open Source, and Camaros"
- PyEdit: A Text Editor Program/Object
- PyPhoto: An Image Viewer and Resizer
- PyView: An Image and Notes Slideshow
- PyDraw: Painting and Moving Graphics
- PyClock: An Analog/Digital Clock Widget
- PyToe: A Tic-Tac-Toe Game Widget
- Where to Go from Here
Internet Programming
- Chapter 12: Network Scripting
- "Tune In, Log On, and Drop Out"
- Python Internet Development Options
- Plumbing the Internet
- Socket Programming
- Handling Multiple Clients
- Making Sockets Look Like Files and Streams
- A Simple Python File Server
- Chapter 13: Client-Side Scripting
- FTP: Transferring Files over the Net
- Transferring Files with ftplib
- Transferring Directories with ftplib
- Transferring Directory Trees with ftplib
- Processing Internet Email
- POP: Fetching Email
- SMTP: Sending Email
- email: Parsing and Composing Mail Content
- A Console-Based Email Client
- The mailtools Utility Package
- NNTP: Accessing Newsgroups
- HTTP: Accessing Websites
- The urllib Package Revisited
- Other Client-Side Scripting Options
- Chapter 14: The PyMailGUI Client
- "Use the Source, Luke"
- Major PyMailGUI Changes
- A PyMailGUI Demo
- PyMailGUI Implementation
- Ideas for Improvement
- Chapter 15: Server-Side Scripting
- "Oh, What a Tangled Web We Weave"
- What's a Server-Side CGI Script?
- Running Server-Side Examples
- Climbing the CGI Learning Curve
- Saving State Information in CGI Scripts
- The Hello World Selector
- Refactoring Code for Maintainability
- More on HTML and URL Escapes
- Transferring Files to Clients and Servers
- Chapter 16: The PyMailCGI Server
- "Things to Do When Visiting Chicago"
- The PyMailCGI Website
- The Root Page
- Sending Mail by SMTP
- Reading POP Email
- Processing Fetched Mail
- Utility Modules
- Web Scripting Trade-Offs
Tools and Techniques
- Chapter 17: Databases and Persistence
- "Give Me an Order of Persistence, but Hold the Pickles"
- Persistence Options in Python
- DBM Files
- Pickled Objects
- Shelve Files
- The ZODB Object-Oriented Database
- SQL Database Interfaces
- ORMs: Object Relational Mappers
- PyForm: A Persistent Object Viewer (External)
- Chapter 18: Data Structures
- "Roses Are Red, Violets Are Blue; Lists Are Mutable, and So Is Set Foo"
- Implementing Stacks
- Implementing Sets
- Subclassing Built-in Types
- Binary Search Trees
- Graph Searching
- Permuting Sequences
- Reversing and Sorting Sequences
- PyTree: A Generic Tree Object Viewer
- Chapter 19: Text and Language
- "See Jack Hack. Hack, Jack, Hack"
- Strategies for Processing Text in Python
- String Method Utilities
- Regular Expression Pattern Matching
- XML and HTML Parsing
- Advanced Language Tools
- Custom Language Parsers
- PyCalc: A Calculator Program/Object
- Chapter 20: Python/C Integration
- "I Am Lost at C"
- Extending Python in C: Overview
- A Simple C Extension Module
- The SWIG Integration Code Generator
- Wrapping C Environment Calls
- Wrapping C++ Classes with SWIG
- Other Extending Tools
- Embedding Python in C: Overview
- Basic Embedding Techniques
- Registering Callback Handler Objects
- Using Python Classes in C
- Other Integration Topics
The End
- Chapter 21: Conclusion: Python and the Development Cycle
- "Something's Wrong with the Way We Program Computers"
- The "Gilligan Factor"
- Doing the Right Thing
- Enter Python
- But What About That Bottleneck?
- On Sinking the Titanic
- So What's "Python: The Sequel"?
- In the Final Analysis.
Tout au long du livre, l'auteur a parsemé des exemples - réalistes, complets, jusque quelques milliers de lignes pour PyMailGUI -, pas seulement quelques lignes éclaircissant un concept. On trouve des exemples pour faire comprendre tout ce qui est à comprendre du concept étudié, avec sur le côté d'autres exemples, plus longs, commentés en suffisance, entourés de quelques paragraphes d'explication, etc. On peut dire que l'auteur construit ses exemples étape par étape, il est impossible de s'y perdre. Même sur l'épineux sujet des threads, bête noire de tout développeur, il explique en détail ce qui doit l'être, les subtilités techniques n'ont plus de secret. Le tout étant utilisé dans des applications réelles. On trouve même des chapitres dédiés à l'étude d'un exemple, utilisant bien évidemment le code déjà écrit - la réutilisation du code est très importante.
Presque tout sujet principal sur Python est couvert : la programmation système (Python tend à remplacer les scripts Bash et Perl) ; les GUI (Python se montre aussi puissant que le C++ à ce niveau) ; Internet (Python est en plein essor avec des frameworks Web comme Django ou Zope, même si aucun des deux n'est couvert, aucun ne supporte Python 3 actuellement). Le principal problème se situe dans tout ce qui ne peut pas trouver sa place dans ce livre : ZODB, Zope, Django, MySQL, etc. ne sont pas encore portés sur Python 3 ; le livre ne couvrant que cette version de Python, ces sujets doivent être écartés de cette quatrième édition. Notons quand même que ZODB est montré avec Python 2 pour exposer l'utilisation des bases de données orientées objet.
Même si le livre semble impressionnant de par sa taille (1600 pages), il est presque impossible de couvrir autant de sujets en aussi peu de pages. Même si certains sujets auraient pu être couverts, le livre est plus que complet. Certains chapitres aident à comprendre les bases de choses qui ne sont pas couvertes volontairement (les scripts CGI sont expliqués, alors que plus personne ne songerait à les utiliser pour des projets Web modernes, même si les frameworks actuels sont basés sur ces principes).
Some thought this book was to give them the basics about Python 3.x; turn the book, it is written: the readers are supposed to have a "previous programming experience." The first chapters are no different, the syntax will not be explained. Actually, you do not need to know Python's syntax to fully understand the book. Programming experience is enough, examples are given in the right order, the best practices are explained not in full details when related to the core language (however, even if he said he will not, the author spends some lines outlining what is really needed). No, it is not required to have completely read a introductive text about Python; of course, it helps, the reader can get more quickly into the full depth of the examples.
Throughout the book you can find examples - realistic, complete (up to thousands of lines for PyMailGUI) -, not a few lines explaining only the concept; you will find there examples for you to understand everything about the studied concept, along with more detailed examples, with comments, concept explanation paragraphs, and the like. One can say he builds his examples step by step, no one can get lost - even when he starts with threads, a subject many developers just do not like, he manages to make everyone completely aware of all those technical subtleties about beginning with threads. Everything here is also shown in use in real world applications.
Examples also mean that the whole book is not all about theory, there are some examples chapters, chapters totally dedicated to a single example, using many snippets written before (code reutilisation is important).
Almost every main subject in Python is covered: system programming, as Python is a replacement for Perl, Bash scripts, etc.; GUIs, as Python can do as much as C++ can in the GUIs' world; Internet, as Python is growing fast with frameworks like Django or Zope (even though any of these is covered: none currently supports Python 3). The main problem is that important things cannot find a place in that book: ZODB, Zope, Django, MySQL, etc. are not yet ported to Python 3; the book only covers Python 3 and thus cannot say much about these. Note that ZODB is shown, in its Python 2 flavour, to show the basics about OODB; wilingly, no Web framework is getting more than a paragraph or two, these technologies are said to change often.
Though this is an impressive book (about 1,600 pages), it is almost impossible to cover so many subjects in so few pages. Even if it lacks a few topics, this book is more than far complete. Some chapters help you understand the basics of things that cannot be covered (CGI scripting is shown, it is not used anymore for new Web projects, but current Web frameworks are based on these principles).
Rapid GUI Programming With Python and Qt
The Definitive Guide to PyQt Programming
Résumé de l'éditeur
Avec Rapid GUI Programming with Python and Qt vous allez apprendre comment créer des applications d'interfaces graphiques efficaces qui s'exécutent sous la majeure partie des systèmes d'exploitation tels que Windows, Mac OS X, Linux et de nombreuses versions d'Unix, en utilisant le même code source pour tous. Summerfield introduit systématiquement chaque technique de développement d'interfaces graphiques : des boîtes de dialogue et des fenêtres pour gérer des données ; des événements d'impression ; et plus encore. À travers les exemples réels de ce livre, vous allez découvrir une approche complètement nouvelle de la programmation basée sur PyQt 4, ainsi que le traitement de nombreux sujets, d'un moteur de texte riche écrit en PyQt 4, à la programmation avancée de modèles/vues et de graphiques/vues. Tous les concepts clés sont agrémentés d'exemples réels, téléchargeables et testés sous Windows, Mac OS X et Linux avec Python 2.5, Qt 4.2 et PyQt 4.2, et sur Windows et Linux avec Qt 4.3 et PyQt 4.3.
Sujets traités :
- bases de Python basiques pour tous les développeurs PyQt : types de données, structures de données, structures de contrôle, classes, modules et plus encore ;
- techniques principales de programmation d'interfaces graphiques avec PyQt : boîtes de dialogue, fenêtres principales et formats de fichiers personnalisés ;
- utilisation de Qt Designer pour créer des interfaces utilisateurs et pour implémenter ainsi que tester des boîtes de dialogue, des événements, le presse-papier et le glisser/déposer ;
- construction de widgets personnalisés : feuilles de style pour widgets, widgets composés, sous-classes et plus encore ;
- profiter du maximum de la nouvelle architecture graphiques/vues de Qt 4.2 ;
- connexion à des bases de données, exécution de requêtes et utilisation des formulaires et des tableaux ;
- programmation avancée avec le modèle/vue : vues personnalisées, générique delegates et plus encore ;
- implémentation d'une aide en ligne, traduction d'applications, et utilisation des possibilités du réseau et du multi-thread de PyQt.
Édition : Prentice Hall - 648 pages, 1re édition, 18 octobre 2007
ISBN10 : 0132354187 - ISBN13 : 9780132354189
- Python Programming
- Data Types and Data Structures
- Control Structures
- Classes and Modules
- Basic GUI Programming
- Introduction to GUI Programming
- Dialogs
- Main Windows
- Using Qt Designer
- Custom File Formats
- Intermediate GUI Programming
- Layouts and Multiple Documents
- Events, the Clipboard, and Drag and Drop
- Custom Widgets
- Graphics (this chapter is devoted to the graphics view architecture introduced with Qt 4.2)
- Rich Text
- Model/View Programming
- Databases
- Advanced GUI Programming
- Advanced Model/View Programming
- Internationalization
- Networking
- Multithreading
- Appendix A: Installing Python, PyQt, and the Qt Libraries on Windows, Mac OS X, and X11-based Unices including Linux
- Appendix B: Selected PyQt Widgets
- Appendix C: Selected PyQt Class Hierarchies
- Index
Parlons de la qualité du livre lui-même : une belle couverture rigide sur laquelle figure l'image du satellite Hubble en orbite autour de la Terre. Le sens ? Python est utilisé par la NASA pour calibrer et analyser les données recueillies par celui-ci. Que ce soit le papier, la qualité d'impression ou les multiples diagrammes, il n'y a rien à redire si ce n'est qu'on aimerait voir ce genre d'initiatives plus souvent chez nos éditeurs, surtout eu égard au prix pratiqué.
Passons maintenant au contenu proprement dit, qui se divise en quatre parties distinctes (cinq en fait si l'on compte les divers appendices qui représentent à eux seuls presque une centaine de pages).
- Programmation avec Python ;
- Programmation d'interfaces graphiques niveau basique ;
- Programmation d'interfaces graphiques niveau intermédiaire ;
- Programmation d'interfaces graphiques niveau avancé.
On peut s'interroger sur le bien fondé de la première partie, en effet il serait étonnant qu'une personne ne connaissant pas le langage se risque à acheter un tel livre. Et pourtant Marc réussi là un véritable tour de force : on balaye les fonctionnalités du langage par la pratique, avec des exemples vraiment très pertinents. J'avoue même avoir appris certains concepts dont je ne soupçonnais pas l'existence, sans doute faute d'en avoir eu un réel besoin. Les fonctions partielles, par exemple, ont un intérêt certain dans la suite de l'ouvrage. De la même façon, vous pourrez y voir de multiples références au PEP (Python Enhancement Proposals : les fonctionnalités à venir de Python).
Si l'anglais peut rebuter au départ, surtout lorsqu'il est technique, on se surprend rapidement à lire un thème donné sans avoir recours au dictionnaire (je précise que je n'ai aucune thèse en anglais). Le style se veut simple et efficace, sans être simpliste.
Autant vous rassurer tout de suite, le contenu des trois parties consacrées au vif du sujet, la programmation d'interfaces graphiques n'est pas du tout un plagiat du livre précédent : C++ GUI Programming with Qt 4. On y aborde évidemment plus ou moins les mêmes sujets, mais un réel travail a été fourni sur les nouvelles fonctionnalités apparues depuis la version 4.2 de Qt 4. Citons par exemple un chapitre entier consacré à l'architecture du Graphics view : un réel plus par rapport au livre précédent.
Les exemples sont abondants, collent à la pratique et vous pourrez en outre les récupérer gratuitement sur la page que Marc à consacré à son ouvrage. Sachez du reste qu'elle est remise à jour régulièrement, afin d'améliorer encore certains exemples et de proposer un errata.
Citons aussi quelques petits cadeaux vraiment bienvenus : des utilitaires écrits par l'auteur afin de gérer au mieux vos projets PyQt 4. À chaque fois, on vous place en situation de développeur et vous serez amené à résoudre quelques exercices proposés en fin de chapitre.
J'ai beaucoup apprécié l'éventail d'alternatives à un problème donné. Comment imprimer le contenu d'un QTextEdit par exemple ? Marc vous propose trois méthodes abondamment commentées, de la plus simple à la plus complexe, à vous de choisir ensuite en fonction de vos besoins, de votre niveau ou du temps que vous allez y passer.
Vous l'aurez donc compris, j'ai été plus que séduit par ce livre. On ne passe pas son temps à comparer Qt à tel autre toolkit comme le font certains ouvrages (d'ailleurs, serait-ce vraiment la peine ?), on pratique avant tout, et les repères ne manquent pas: index abondants, diagrammes de classes, éventail visuel de tous les widgets.
Des critiques ? Un chapitre de C++ GUI Programming with Qt 4 était consacré au développement de plugins avec C++, il est absent ici, comme dans tout livre sur Python consacré à ce vaste sujet. Il est vrai que les possibilités dynamiques qu'offrent Python permettent de pallier ce problème assez facilement, mais encore faut-il mettre la main à la pâte. S'il est absent, c'est à mon avis surtout parce qu'il n'existe pas de recette tout faite, mais j'aurais au moins aimé disséquer un exemple simple sur le sujet.
Enfin contrairement à beaucoup d'autres ouvrages, Rapid GUI Programming with Python and Qt se distingue aussi par la façon dont il a été écrit. Pas de LaTeX, de Scribus, de QuarkXPress ni même de InDesign ici, mais une alternative originale et légère : Lout.
Beginning Python Visualization
Crafting Visual Transformation Scripts
Résumé de l'éditeur
Édition : APress - 384 pages, 1re édition, 1er mars 2009
ISBN10 : 1430218436 - ISBN13 : 9781430218432
Deux chapitres sont dédiés à la gestion de la donnée et à son extraction d'un fichier. Comment est-ce que les données peuvent être stockées, comment peut-on parser les fichiers pour ne récupérer qu'une partie ? Toutes les réponses sont dans ces chapitres (même si on n'aborde pas les formats plus complexes comme XML, il faudra regarder l'aide directement) sous une forme simple et efficace.
L'affichage est un élément clé dans l'analyse ici, ce qui est principalement abordé par le module Matplotlib. Ce dernier est complexe, mais la présentation rend son utilisation aisée. Par la suite, les modules Numpy et Scipy sont aussi présentés, mais seulement dans une orientation d'analyse de données, donc les outils les plus avancés ne seront pas abordés.
Un dernier chapitre sera dédié aux modules très utiles mais non indispensables comme Pickle. On peut se passer de ce chapitre en première lecture, mais pour des analyses plus complexes, ils seront à connaître pour gagner du temps.
L'auteur a fait le pari de présenter uniquement la partie analyse de donnée et visualisation avec Python. Le texte est simple mais va au but. En lisant ce livre, on est capable de pouvoir réaliser 99% des traitements sur des données, comme faire des contrôles qualité graphiques. Le pari est donc remporté.
After a small introduction where all elements of the book are used for a simple example, the author tells us how to install Python and the different modules that will be needed for our task. Then, the langage itself is fastly introduced. If you don't know any object-oriented langage or Python, you may find the introduction too light, so you may need to read a book dedicated to the Python langage if you want to master it. It's obviously not the goal of the book.
Two chapters deal with data management and extracting it from a file. Why can data be stored? How to parse and retrieve what we need? The answer to these questions are in these chapters (even if the more complex formats as XML are not deal with, you'll have to dig in the documentation) in a simple and efficient way.
Display is of course the key element here. It's the Matplotlib module which has this responsibility. It's a complex module, but it is explained so that is is easy to use. Then Numpy, Scipy and PIL have each their chapter. They cannot be fully presented, only with a data analysis orientation. For more advanced functions, you will once again have to use the associated documentation.
The last chapter is dedicated to useful but not mandatory modules, like Pickle. This chapter can be skipped at first, but then the modules will help optimizing your time for more complex visualizations.
The author took the challenge of only showing the data analysis and visualization part of Python. The text is simple and goes straight to the point. By reading the book, one is able to do 99% of data analysis and quality controls (QCs). The challenge is thus a success
Python
Les Fondamentaux du langage - La Programmation pour les scientifiques
Résumé de l'éditeur
L'auteur détaille les bases du langage puis présente, avec des exemples, des outils que les scientifiques n'ont pas l'habitude d'utiliser (sauvegarde des données, parallélisme, XML...). Ensuite, l'auteur décrit le module matriciel Numpy (comment manipuler des tableaux, la syntaxe et les fonctions usuelles), un "catalogue" des outils proposés par Scipy (optimisation numérique, statistiques, traitement du signal...) ainsi que des fonctionnalités graphiques indispensables pour les rapports ou les publications. La dernière partie présente les outils pour communiquer avec le C ou le C++.
Édition : ENI - 400 pages, 1er janvier 2008
ISBN10 : 2746040883 - ISBN13 : 9782746040885
- Introduction et origines
- Le langage Python
- Les modules indispensables de la bibliothèque standard
- D'autres modules de la bibliothèque standard
- Numpy : une bibliothèque mathématique pour Python
- Scipy : la boîte à outils scientifiques
- Graphiques 2D avec Matplotlib
- Interface C/C++ avec Python
La moitié de l'ouvrage est consacré au langage Python et à sa bibliothèque standard, l'autre moitié couvre les bibliothèques indispensables au calcul scientifique NumPy, SciPy (pour le calcul matriciel, FFT, traitement du signal, algèbre linéaire, ...) ou encore Matplotlib. Le livre se termine par l'interfaçage entre Python et le C/C++.
La présentation du langage Python et de sa bibliothèque standard est assez dense mais les explications sont claires et les remarques intéressantes, le tout agrémenté de nombreux exemples simples, idéales pour quelqu'un qui a besoin de se plonger rapidement dans Python.
Pour NumPy et SciPy, Matthieu BRUCHER détaille un nombre très important de modules et fonctions de ces deux bibliothèques à la manière d'un manuel de référence. Ainsi, vous pourrez vous plonger régulièrement dans ces chapitres lorsque vous aurez besoin d'outils dans des domaines spécifiques. Le lecteur devra cependant souvent lui-même expérimenter les fonctions proposées, les exemples étant cette fois-ci relativement peu nombreux.
Le module Matplotlib est présenté par une succession d'exemples détaillés qui permet d'avoir un bon aperçu des possibilités de Matplotlib.
Enfin, Matthieu BRUCHER s'attaque à l'interfaçage entre Python et le C/C++ qui pour moi reste la partie la plus difficile à appréhender (ce qui est normal vu qu'il faut être à la fois être très à l'aise en Python et en programmation C ou C++). Mais les explications permettent une bonne entrée en matière à ceux qui auront besoin de profiter de la puissance de calcul du C/C++ dans leur programme Python (rassurez-vous, il est encore possible de se passer de tout ceci en travaillant un maximum avec les nombreuses bibliothèques externes disponibles avec Python, souvent développées en C ou C++, comme leurs concepteurs ont fait l'effort de créer les fichiers d'interface indispensables).
Il est sûr qu'un habitué de Python aurait préféré un livre entièrement consacré aux bibliothèques de calcul scientifique mais ce n'était pas l'unique objectif de Matthieu BRUCHER. Je le félicite de plus d'être le pionner dans l'écriture d'un livre en français consacré à ce domaine.
Ensuite, il s'agit de consolider ses connaissances en python à travers des exemples plus intéressants, qui abordent le XML, le réseau, la compression, le multithreading, etc, ce qui amène le lecteur à faire des essais, à comprendre. J'ai tenu à décrire ce début de livre car c'est à mon avis une très bonne approche qui prépare très bien pour la suite.
C'est à ce moment-là que les choses sérieuses commencent. L'auteur, à partir de ce moment vise particulièrement les scientifiques (bien qu'il ne ferme pas la compréhension aux autres). Matthieu Brucher dédie une grosse partie du livre à des bibliothèques scientifiques utilisables en Python. En effet, une fois la syntaxe et les quelques subtilités du langages acquises, le lecteur a un niveau suffisant pour s'intéresser à la représentation des matrices, la transformée de Fourier, le traitement de signal et tant d'autres choses, en Python. Il s'agit donc à partir de ce moment là de considérer Python non plus comme un "simple langage de programmation" mais comme un outil scientifique pour le calcul, le traitement, la résolution, par exemple. L'auteur aborde donc un large spectre des possibilités de ces bibliothèques Python jusqu'à la fin du livre, en terminant avec l'intéraction entre Python et C/C++.
Ce qui m'a plu dans ce livre, bien que connaissant déjà la programmation (mais peu le langage Python), est la façon dont est abordé le langage. L'élévation du niveau est progressive, mais entraine une motivation due au fait que la programmation se concrétise : on est ensuite capable de se servir de Python comme de Matlab, ou comme tout autre outil de ce genre. De plus, Python étant un langage de programmation simple mais pourtant offrant tellement de possibilités, on peut écrire des applications réellement puissantes : aller chercher un fichier xml à une adresse donnée, récupérer des informations relatives à un signal, construire puis effectuer des traitements sur le signal, tracer différents graphiques, etc. Le sujet choisi par l'auteur est excellent et la mission est réussie. Il y a toutefois une seule chose qui pourrait déranger : ne rien connaître à la programmation ni à l'algorithmie. En effet, l'auteur ne passe pas des pages et des pages à décrire une notion simple. Les explications sont efficaces et seront comprises par, à mon avis, toute personne concernée par ce livre.
Apprendre à programmer avec Python
Résumé de l'éditeur
Édition : O'Reilly - 407 pages, 28 avril 2005
ISBN10 : 2841772993 - ISBN13 : 9782841772995
- Introduction
- 1. Penser comme un programmeur
- 2. Premiers pas
- 3. Contrôle du flux d'instructions
- 4. Instructions répétitives
- 5. Principaux types de données
- 6. Fonctions prédéfinies
- 7. Fonctions originales
- 8. Utilisation de fenêtres et de graphismes
- 9. Les fichiers
- 10. Approfondir les structures de données
- 11. Classes, objets, attributs
- 12. Classes, méthodes, héritage
- 13. Classes et Interfaces graphiques
- 14. Et pour quelques widgets de plus
- 15. Analyse de programmes concrets
- 16. Gestion d'une base de données
- 17. Application web
- 18. Communications à travers un réseau
- 19. Annexes
L'entrée en matière dans le langage Python est concue de telle sorte que même un débutant en programmation ne sera jamais perdu. Ainsi avec les 6 premiers chapitres, vous apprendrez les bases du langage.
La suite n'est pas forcément à lire linéairement. Vous retrouverez ce qui est nécessaire dans tout programme à savoir la construction de fonctions puis de classes. Concernant les classes, l'auteur se contente d'aborder principalement la construction des classes, l'héritage et le polymorphisme.
De gros efforts ont aussi été fait sur la programmation d'interface graphique avec le modèle Tkinter avec 4 chapitres y étant consacrés.
Enfin, quelques notions supplémentaires intéressantes (comme le web, les bases de données ou encore les communications réseaux) apparaîssent en fin d'ouvrage. L'auteur met l'accent sur ce qui est vraiment utile et nécessaire, si bien que même si vous ne serez pas des experts sur ces thèmes, vous serez aptes à les utiliser directement dans vos propres programmes sans avoir besoin de rechercher nécessairement d'autres informations ailleurs.
La clarté de l'ouvrage n'est jamais prise en défaut. Du début à la fin, l'auteur ne s'affranchît jamais de ne pas expliquer clairement les notions abordées. Tous les codes sources des exemples sont complétés de commentaires et d'explications qui devraient vous permettre de les lire et comprendre facilement et très vite. Enfin, chaque chapitre est agrémenté d'exercices corrigés qui vous permettront réellement de vérifier que vous avez compris les notions abordées. Ainsi, il restera une trace dans votre esprit de tout ce que vous lirez dans ce livre.
Une version pdf est également disponible sur nos pages cours Python qui vous permettra également de voir la table des matières complète de l'ouvrage.
Au cœur de Python - volume 1
Résumé de l'éditeur
Cet ouvrage introduit les aspects fondamentaux de la programmation en Python : syntaxe gestion des objets et de la mémoire programmation orientée ou fonctionnelle... Il propose de nombreux exemples pratiques de code pour acquérir de bonnes habitudes de programmation ainsi que des exemples interactifs et des exercices. Des tableaux faciles à utiliser viennent détailler les modules les opérateurs les fonctions et les méthodes.
Une attention particulière est donnée aux nouveautés de Python et de sa version 2.5.
Wesley Chun dirige actuellement une société de conseil spécialisée en génie logiciel en Python et en formation professionnelle (www.cyberwebconsulting.com). II programme, enseigne et écrit depuis 1980 et possède plus de dix ans d'expérience en Python. Chez Yahoo!, il a contribué à la création de Yahoo! Mail et de Yahoo! People Search.
Édition : Pearson Education - 645 pages, 12 décembre 2008
ISBN10 : 2744023167 - ISBN13 : 9782744023163
- 1. Bienvenue dans Python !
- 2. Débuter en Python
- 3. Les bases de Python
- 4. Le objets Python
- 5. Nombres
- 6. Séquences : chaînes, listes et tuples
- 7. Type associatifs et ensembles
- 8. Instructions conditionnelles et itératives
- 9. Fichiers et entrées/sorties
- 10. Erreurs et exceptions
- 11. Fonctions et programmation fonctionnelle
- 12. Modules
- 13. Programmation orientée objet
- 14. Environnement d'exécution
- A. Corrigé de certains exercices
- B. Tables de référence
Selon moi, le lecteur devra soit avoir déjà débuté son apprentissage de Python en tant que premier langage, afin de ne pas être perdu au milieu de tous les termes usuels de ce domaine, soit connaître déjà un langage de programmation classique, et a priori n'avoir besoin que de la syntaxe pour aborder les premiers chapitres -- et fort heureusement, la syntaxe y est justement détaillée étape par étape.
A priori, vous y trouverez des explications sur tout ce qui est disponible en standard dans le langage... les structures de données (séquences, dictionnaires, etc), les paradigmes de programmation disponibles (impératif/procédural, impératif/objet, fonctionnel), et même une partie système qui vous permettra d'effectuer aisément certaines tâches propres à votre OS (en fait seul Windows et les Unixoïdes sont détaillés, mais ça couvre 99% des besoins).
Les débutants y trouveront même des exercices corrigés pour les guider dans leur apprentissage.
En résumé, un excellent livre à un tarif abordable (environ 30?), ce qui est assez rare pour ce type d'ouvrage.
Ce livre me semble d'une lecture très aisée dans la mesure où les différentes notions abordées de chaque chapitre sont reprises plusieurs fois dans un même chapitre. Vous ne perdrez ainsi jamais le fil du cours même si certaines notions vous paraissent floues au premier abord. Pour des notions plus complexes (notamment en programmation objet), il est parfois bon de déjà les connaître ou alors de bien tester les exemples (toujours simples d'écriture mais parfois subtils). De toute façon, vous assimilerez facilement toutes les notions de bases de Python (syntaxe, nombres, listes, chaînes de caractères et fonctions associées) et vous serez aussi en mesure d'utiliser un maximum des propriétés de la programmation fonctionnelle et objet tout en profitant des énormes possibilités offertes par Python.
Toutefois, quelques coquilles m'ont sauté aux yeux dans les exemples (vous retrouverez cependant les erreurs et corrections détectées depuis (à partir de la version américaine) sur le site http://corepython.com/). Une indentation de 4 caractères classiquement utilisée au lieu de 2 ou 3 aurait aussi, je pense, apporté un peu plus de lisibilité dans le code de certains exemples. Concernant les exercices, leur nombre est une bonne chose mais il aurait été souhaitable qu'il y en ait plus de corrigés dans le livre ou bien que les corrections soient disponibles sur le web.
Ce livre est une bonne entrée en matière dans Python. Il ne se suffit cependant pas à lui-même pour profiter pleinement des possibilités de Python car les modules de la bibliothèque standard ne sont pas passés en revu. Le volume 2 vous permettra de découvrir certains de ces modules (concernant les expressions régulières, le réseau, le web, les threads, Tkinter, ...) Un autre ouvrage tel que Python en concentré peut aussi lui être associé pour avoir en plus l'occasion de découvrir tous les modules existants dans la distribution standard de Python.
À qui s'adresse-t-il ?
À en croire les premières pages du livre, aucune connaissance n'est requise en programmation pour aborder le langage Python. Mais on verra plus loin que ceci n'est vrai que partiellement, ce qui n'enlève rien à l'intérêt du livre (bien au contraire).
Qualité
L'ouvrage se divise en deux tomes: le premier pour aborder les notions fondamentales, le second pour les celles avancées.
Les deux livres ont un papier bien blanc, épais et très agréable au toucher, sont reliés à la colle, ce qui ne les empêche pas de rester vraiment solide.
Ils ont en revanche une couverture que j'ai trouvé peu inspirée, la Terre avec une série de nombres en filigrane sur fond vert.
Le contenu
Le premier chapitre porte sur l'installation de Python, ses différences avec les autres langages et des suggestions d'IDE/éditeurs de texte. Si elles ne sont pas si nombreuses, elle ont au moins le mérite de rester d'actualité car on pourra noter par exemple les nouveaux produits de la firme ActiveState : Komodo Edit et Komodo IDE (la version 4.0.2 vient de sortir à l'heure où j'écris ces lignes).
On entre enfin dans le vif du sujet au chapitre 2 qui se veut un survol du langage. J'ai été un peu surpris par celui-ci, je m'attendais à quelque chose d'assez léger (et souvent pompeux, il faut le dire), mais on commence vraiment à comprendre là le titre du livre : "Au cœur de...", car on va loin (par ex. allusions aux passages d'arguments par pointeurs/valeurs ). Mais que cela ne vous rebute pas : on a le droit à du bon, du très bon même.
La suite traite de nombreux sujets. Elle est à mi-chemin entre une introduction sur un sujet donné, un recueil d'exemples et un manuel de référence. L'auteur abuse des mises en garde, et certains de ses conseils s'avèrent vraiment précieux pour la compréhension.
On se laisse vraiment divertir et les exemples ou exercices donnés (certains sont corrigés) se veulent pratiques et diversifiés, ce que je reprocherai à beaucoup d'ouvrages. Même si vous connaissez pas mal Python, Wesley Chun fait en sorte vous soyez surpris de temps à autres par de petites subtilités forts bien venues, c'est pourquoi je pense que le tome I s'avère indispensable, même pour un connaisseur.
Le tome II quant à lui aborde des sujets assez évolués, comme l'écriture d'extensions dans un langage de plus bas niveau, les expressions régulières et la programmation réseau.
Critiques
- Des coquilles persistent sur certains bouts de code, mais il faut avouer qu'il est difficile de les éviter surtout dans un ouvrage aussi volumineux ;
- Certains sujets ne sont pas abordés : XML et JSON par exemple n'ont pas une page alors qu'ils sont utilisés fréquemment ;
- Comme d'habitude, le chapitre concernant les interfaces graphiques se veut très limité (conséquence du fait qu'on ait plutôt l'embarras du choix avec Python). L'auteur n'a pas voulu faire de choix particulier et essaye d'en balayer quelques uns. A mon grand regret, PyQt4 n'est pas là, on invoque toujours les Copyrights mais TrollTech à beaucoup évolué là-dessus. Aussi, si vous désirez aller plus loin sur le sujet, il vous faudra acheter un livre spécifique à votre interface ;
- Les Design Patterns sont un peu passés à la trappe, c'est un peu dommage ;
- Les différentes bibliothèques à disposition ne sont pas assez fournies ;
- Le tome II laisse un peu sur sa faim (beaucoup plus court) ;
- Il ne répond pas à certaines questions récurrentes sur les forum ou listes de discussion : comment faire pour que mon application mette en place un système de plugins ? comment un objet peut-il transmettre un message à un autre en cas de changement d'état ? etc.
Conclusion
Même s'il n'est pas exempt de défauts, j'ai vraiment apprécié la lecture d'Au cœur de Python et je ne saurai trop vous recommander ces 2 tomes si vous maîtrisez déjà un peu le serpent. Les débutants devront peut-être s'orienter vers un livre qui les tienne un peu plus par la main.
Au cœur de Python - volume 2
Résumé de l'éditeur
Wesley Chun dirige actuellement une société de conseil spécialisée en génie logiciel en Python et en formation professionnelle (www.cyberwebconsulting.com). II programme, enseigne et écrit depuis 1980 et possède plus de dix ans d'expérience en Python. Chez Yahoo!, il a contribué à la création de Yahoo! Mail et de Yahoo! People Search
Édition : Campus Press - 337 pages, 16 juillet 2007
ISBN10 : 2744021954 - ISBN13 : 9782744021954
- 1. Expressions régulières
- 2. Programmation réseau
- 3. Programmation de clients Internet
- 4. Programmation multithread
- 5. Programmation d'interfaces graphiques
- 6. Programmation Web
- 7. Bases de données
- 8. Extensions de Python
- 9. Sujets divers
- A. Corrigé de certains exercices
- B. Tables de référence
Chaque sujet débute par une explication détaillée des concepts abordés, qui ainsi évitera aux débutants d'être complètement déroutés. Les exemples sont cette fois-ci beaucoup plus longs et complexes et demanderont donc beaucoup plus d'attention. Les quelques impressions d'écran (notamment pour les exemples sur Tkinter ou encore sur la création de page web) faciliteront la compréhension de la lecture sans nécessairement avoir besoin d'exécuter le code. Les sujets me semblent cependant un peu moins approfondis que dans le volume 1. L'auteur se concentre surtout sur les modules, classes et fonctions les plus couramment utilisés.
On notera toutefois quelques pages sur des bibliothèques non disponibles dans la distribution standard de Python concernant par exemple les toolkits graphiques wxPython et PyGTK ou encore la manipulation d'objet de Microsoft Office. Ceci reste tout de même très succinct mais donnera des pistes de recherche pour les programmeurs intéressés.
Ce livre reste dans la lignée de beaucoup de livres actuel sur Python : un livre généraliste présentant de manière très clair la bibliothèque standard de Python sans pour autant chercher à être le plus exhaustif possible. Si vous avez appréciez le volume 1, ce devrait toujours être le cas pour ce second volume. Si vous êtes un peu plus expérimenté, vous pouvez préférer un ouvrage plus complet tel que Python en concentré mais plus difficile à aborder.
Python en Concentré
Manuel de référence
Résumé de l'éditeur
Édition : O'Reilly - 802 pages, 15 février 2007
ISBN10 : 284177452X - ISBN13 : 9782841774524
- Partie I. Démarrer avec Python
- 1. Introduction à Python
- 2. Installation
- 3. L'interpréteur Python
- Partie II. Fondamentaux du langage Python et des objets prédéfinis
- 4. Le langage Python
- 5. Python orienté objet
- 6. Exceptions
- 7. Modules
- 8. Objets prédéfinis fondamentaux
- 9. Chaînes et expressions régulières
- Partie III. Bibliothèques Python et modules d'extension
- 10. Opérations sur les fichiers et sur le texte
- 11. Persistance et bases de données
- 12. Opérations sur les dates et les heures
- 13. Contrôle de l'exécution
- 14. Threads et processus
- 15. Traitements numériques
- 16. Array Processing
- 17. Interfaces graphiques Tkinter
- 18. Tests, débogage et optimisations
- Chapitre IV. Programmation Web et réseau
- 19. Modules pour les protocoles réseau côté client
- 20. Modules pour les sockets et les protocoles réseau côté serveur
- 21. Scripts CGI et autres possibilités
- 22. Mime et encodage réseau
- 23. Texte structuré: HTML
- 24. Texte structuré: XML
- Partie V. Extension et intégration
- 25. Extension et intégration de Classic Python
- 26. Extension et intégration de Jython
- 27. Distribution des extensions et des programmes
Cet ouvrage est découpé en trois parties principales à savoir les bases du langage (types de données, les exceptions, les expressions régulières ...), les principaux modules (opération sur les fichiers, les bases de données, les dates et heures, les threads, les interfaces graphiques avec Tkinter, ...) et la programmation Web et réseau (protocole http, ftp, les sockets, XML, ...)
Ce livre est plus qu'une version française de la Python Library Reference. Vous y retrouverez le descriptif de la plupart des modules et fonctions que propose Python dans sa distribution standard. Les exemples sont suffisants, toujours très courts avec des explications concises et efficaces; ce qui vous permettra de facilement mettre en pratique n'importe quelle fonction détaillée dans l'ouvrage.
Ce que j'apprécie surtout, c'est la possibilité de découvrir des fonctions/modules dont on n'aurait pas forcément soupçonné l'existence.
Bref, c'est ouvrage est à avoir à porter de main lorsque vous développez. Il n'est en revanche pas destiné à un public souhaitant avant tout apprendre le langage. Reportez vous dans ce cette optique plutôt vers un livre comme Apprendre à programmer avec Python
Le livre "Python en concentré" fut mon réel premier contact avec le langage Python. J'en attendais donc une certaine démystification, une explication détaillée des procédés logiques sous-jacents, et des caractéristiques originales du langage.
Je ne suis pas déçu de l'ouvrage, le chapitre 4 détaille les spécifications du langage assez clairement (structure lexicale, mots-clés, instructions, types de données, opérateurs, coercition) et on mesure bien la puissance des différentes syntaxes. Les amateurs de l'orienté objet se verront dédié le chapitre 5, qui à son tour explique les règles du modèle objet en Python (Classes, héritage, méthodes, __init__ et autres méthode spéciales).
Les autres chapitres expliquent les notions d'Exceptions, de Modules, des manipulations de chaînes et expressions régulières, et présentent de façon assez complète (à mon gout), les principes de manipulation des APIs essentielles (Persistence et SGBD, I/O, Exécution, Threads, TKinter, Réseaux, XML).
J'ai donc apprécié la lecture de l'ouvrage (et j'essaierai désormais d'utiliser Python professionnellement ;-) ), l'acheteur devra néanmoins approfondir certains aspects en créant un projet autodidactique et implémenter les différents exemples pour se familiariser avec l'outil.
Il est préférable d'avoir des notions de programmation pour acquérir ce livre.
Programming Python
Résumé de l'éditeur
In over 1,200 pages of material, this book offers an extremely comprehensive guide to Python development. Though his book is densely packed with information, Mark Lutz is a lively and witty writer whose focus is on getting things done using the natural strengths of the Python language. To that end, after an introduction and history of the language, the book shows how to use Python for performing automated tasks with files and directories (for example, for doing backups both locally and on Web servers). Not only will this book teach you more about Python, but it will also give you a library of code that you can use as is or adapt for your own projects.
The text covers every conceivable facet of Python and the language's support for networking, files and directories, task management, and even persistence (through its support for shelves). Complete Python programs show how to create e-mail clients, do reporting, and create Web applications (for an online errata database). Chapters on doing graphics programming in Python, as well as coverage of both built-in and custom data structures, are especially good. Because Python is often used for automating installations (in some Linux distributions, for instance), readers will appreciate the sample code and tips for using Python to create bulletproof installs.
Later sections show how get Python to work with C, Java (through JPython), and other languages. The book concludes with useful reference sections summarizing key aspects of Python, like its revision history, relationship to C++, and other material. There aren't many titles on Python, and fans of this up-and-coming language are lucky to have such a solid tutorial and guide available in Programming Python. Perfect for those with just a little previous exposure to the language, it's all you need to master Python in-depth and tap its considerable power for virtually any software project.
Édition : O'Reilly - 1552 pages, 3e édition, 1er août 2006
ISBN10 : 0596009259 - ISBN13 : 9780596009250
- The Beginning
- System Programming
- GUI Programming
- Internet Programming
- Tools and Techniques
- Integration
- The End
Une fois qu'on a appris à programmer avec Python, on se retrouve face à la quantité de bibliothèques fournies en standard - je ne parle même pas des autres -. Ce livre en aborde quelques-unes.
Avant de parler du contenu, il faut noter que cette édition date, on parle dans le livre de Python 1.5 alors qu'on est à la 2.5, donc il y a eu des évolutions, et j'imagine qu'il y a eu de réelles avancées dans le domaine du multi-processus, puisque le livre n'arrête pas de remarquer les différences entre les versions Windows et Linux...
N'empêche, la première partie est assez complète - malgré les améliorations qui ont dû se greffer sur la bibliothèque standard - et on voit les différentes solutions pour faire plusieurs process, plusieurs threads, des pipes pour communiquer, ... Tout cela est relativement clair.
La deuxième partie est consacrée à Tkinter, partie que j'ai plutôt zappée car indiquant d'aller voir la doc de Tk pour plus d'approfondissement, et cette bibliothèque n'est pas ma préférée, loin s'en faut, pour faire du graphisme.
Une partie complète est consacrée au réseau, et plus particulièrement la création d'un serveur orienté web, avec l'utilisation des différents protocoles, des différents sockets de la bibliothèque standard, c'est touffu, mais très intéressant.
Enfin, l'avant-dernière partie regroupe tout ce qui n'a pas pu être mis dans les autres parties, donc la persistence des données, intéressant dans certains cas, la création de structures de données particulières, mais je serai plutôt enclin à conseiller de chercher une autre bibliothèque pour cela que faire tout soi-même, et enfin une partie sur le parsing de texte.
La dernière partie se consacre à l'intégration avec le C/C++ grâce à SWIG, ce qui permet de faire une bonne introduction à ce logiciel, même s'il faudra lire sa doc pour comprendre mieux.
Quoiqu'il en soit, ce livre est indispensable pour ceux qui veulent utiliser les threads, le réseau, pour le reste, il fait une très bonne introduction, qu'il faudra donc compléter.
Python par l'exemple
Résumé de l'éditeur
Vous aussi, devenez un grand de la programmation en Python en vous mettant à l'école des meilleurs programmeurs. Google, la NASA, AstraZeneca utilisent Python. Pourquoi pas vous ?
Édition : O'Reilly - 525 pages, 13 juillet 2006
ISBN10 : 2841773795 - ISBN13 : 9782841773794
- Texte
- Fichiers
- Temps et argent
- Raccourcis Python
- Programmation orientée objet
- Persistance et bases de données
- Débogage et tests
- Traitement de XML
- Programmation réseau
- Programmation web
- Itérateurs et générateurs
- Descripteurs, décorateurs et métaclasses
Les thèmes balayés étant assez vaste, vous risquez donc de retrouver des thèmes qui ne vous préocuppent pas. Ainsi une petite partie des codes sources peuvent directement vous intéresser dans un premier temps. En revanche, pour chaque thème, les codes sources allant parfois du très court (une simple recherche de la fonction utile dans la Python Librairie Reference suffirait presque pour obtenir une réponse satisfaisante) au plus compliqué (une cinquantaine de lignes), ce livre est plus destiné au jeune développeur Python maîtrisant tout de même les bases du langage. Ainsi, il vous permettra aussi d'aborder plus sereinement des thèmes qui vous intéressent mais qui vous sont néanmoins inconnus en vous fournissant des réponses à des questions classiques pour débuter sur sujet particulier ou bien des notions que vous ne connaissiez ou ne maîtrisiez pas (le chapitre sur les Descripteurs, décorateurs et métaclasses par exemple pour moi).
Ce que j'apprécie particulièrement dans ce livre n'est pas tant le code source en lui-même (étant capable de trouver sans trop de difficultés une solution adaptée aux problèmes que je rencontre) mais plutôt la discussion qui suit à chaque fois. Ces discussions permettent de réfléchir aux différentes pistes pour solutionner un problème (celles auxquelles nous pensons ne sont pas toujours les plus efficaces, optimisées, les moins gourmandes en mémoire ou encore les plus pythoniques), aux différentes notions qui en résultent et aux astuces que l'on peut découvrir.
Le seul regret est que cette traduction ne présente que 12 chapitres sur les 20 que contient l'édition originale pour un prix équivalent.
Je conseille donc ce livre aussi bien aux personnes développant dans un contexte assez large et aux personnes souhaitons améliorer leur culture pythonique.
wxPython In Action
Résumé de l'éditeur
co-authored by the toolkit's developer, Robert Dunn the only published source for the wxPython toolkit complete resource, including reference, tutorial and many unique examples of working with the code.
Because they are often large and complex, GUI programming toolkits can be hard to use. xyPython is a combination of the Python programming language and the wxWidgets toolkit, which allows programmers to create programs with a robust, highly functional graphical user interface, simply and easily. wxPython combines the power of an exceptionally complete user interface toolkit with an exceptionally flexible programming language. The result is a toolkit that is unique in the ease with which complex applications can be built and maintained.
wxPython in Action is a complete guide to the wxPython toolkit, containing a tutorial for getting started, a guide to best practices and a reference to wxPythons' extensive widget set. After an easy introduction to wxPython concepts and programming practices, the book takes an in-depth tour of when and how to use the bountiful collection of widgets offered by wxPython. All features are illustrated with useful code examples and reference tables are included for handy lookup of an objects properties, methods and events. The book enables developers to learn wxPython quickly and remains a valuable resource for future work.
Édition : Manning Publications - 552 pages, 1er mars 2006
ISBN10 : 1932394621 - ISBN13 : 9781932394627
- Part 1: Introduction to wxPython
- 1. Welcome to wxPython
- 2. Giving your wxPython program a solid foundation
- 3. Working in an event-driven environment
- 4. Making wxPython easier to handle with PyCrust
- 5. Creating your blueprint
- 6. Working with the basic building blocks
- Part 2: Essential wxPython
- 7. Working with the basic controls
- 8. Putting widgets in frames
- 9. Giving users choices with dialogs
- 10. Creating and using wxPython menus
- 11. Placing widgets with sizers
- 12. Manipulating basic graphical images
- Part 3: Advanced wxPython
- 13. Building list controls and managing items
- 14. Coordinating the grid control
- 15. Climbing the tree control
- 16. Incorporating HTML into your application
- 17. The wxPython printing framework
- 18. Using other wxPython functionality
Et ce livre est très bien fait. On commence par une entrée qui résume en gros le livre. Si on comprend cette partie, on peut survoler presque toutes les autres parties lors de la compréhension du fonctionnement, lorsqu'il faudra regarder des spécificités, il faudra s'attarder pour observer, mais c'est normal.
Les parties suivantes explorent donc ce qui a été exposé rapidement en première partie. On aurait peut-être aimé lire que ce qu'on apprend a déjà été exposé précédemment en version simplifiée, mais ce n'est pas indispensable. On y voit tout ce qu'il faut savoir pour créer une interface rapidement.
La dernière partie est plus hétéroclyte, avec une introduction à trois composants un peu particuliers permettant d'afficher certains résultats et d'interagir avec, du Model-View-Controller en quelque sorte. Ensuite, on aborde le widget HTML puis très rapidement le multithreading. On aurait apprécié voir un code un peu plus complexe pour montrer les interactions en multithreading, mais bon...
Je suis resté sur ma faim, j'aurai apprécié une introduction au notebook et surtout à wxOGL, puisque l'implémentation est native Python, et que la doc associée est manquante... Mais malgré cela, c'est un très bon livre et le seul à jour sur un toolkit graphique pour Python. Enfin, à ce jour.
Vous entrerez très facilement avec les 2 premiers chapitres dans la conception des IHM wxPython, chapitres qui vous apporteront les bases fondamentales à toute application qui s'appuie sur wxPython. Cette partie se poursuit par deux chapitres importants avec les évènements que vos applications devront gérer et un autre qui vous donnera de très bon conseils sur l'écriture de vos IHM pour que celles-ci restent maintenables et modifiables dans le long terme.
Dans la deuxième partie, on vous expliquera comment insérer dans vos applications la plupart des widgets basiques. Pour chacun d'eux, vous trouverez une multitude d'exemples de codes source entièrement fonctionnels en général assez courts (une vingtaine de lignes) et toujours accompagnés d'un text explicatif conséquent qui en plus détaille chaque point référencé dans le code source. Ce chapitre sera aussi parsemé de nombreux tableaux récapitulant les constantes utiles pour les paramètres et les évènements caractérisant de vos widgets. Vous en trouverez également d'autres qui décrivent les méthodes des widgets les plus utilisées. Les chapitres suivants vous apporteront de longues explications sur la construction des dialogues et des menus wxPython et sur la manipulation des sizers et des images.
Enfin dans la troisième partie, vous irez encore plus loin avec des chapitres entièrement consacrés aux widgets tels que les contrôles grid ou tree. Bref, pour ceux qui pensaient comme moi que les exemples téléchargeables sur le site officiel de wxPython ne se suffisaient pas à eux-mêmes pour entrer complètement dans cette bibliothèque, vous ne serez pas déçus par ce livre. Toutefois, l'utilisation de ces exemples (ainsi que de la documentation de l'API wxPython) est ensuite aussi vivement recommandée lorsqu'on souhaite avoir rapidement un exemple de fonctionnalités non forcément présentées dans l'ouvrage. Mais vous vous y retrouverez beaucoup plus facilement et rapidement qu'avant.
En conclusion, si vous voulez créer des interfaces graphiques professionnelles mais que vous hésitiez encore entre les différentes bibliothèques à votre disposition, sachez que vous trouverez votre bonheur grâce à ce livre - en tout cas, depuis que j'ai ce livre, j'envisage (et j'ai même commencé) de migrer mes IHMs Delphi en wxPython.
Apprendre à programmer avec Python 3
Avec plus de 50 pages de corigés d'exercices !
Résumé de l'éditeur
Un support de cours réputé et adopté par de nombreux enseignants, avec 50 pages d'exercices corrigés
Reconnu et utilisé par les enseignants de nombreuses écoles et IUT, complété d'exercices accompagnés de leurs corrigés, cet ouvrage original et érudit est une référence sur tous les fondamentaux de la programmation : choix d'une structure de données, paramétrage, modularité, orientation objet et héritage, conception d'interface, multithreading et gestion d'événements, protocoles de communication et gestion réseau, bases de données... jusqu'à la désormais indispensable norme Unicode (le format UTF-8). Cette nouvelle édition détaille notamment la réalisation avec Python 3 d'une application web interactive et autonome, intégrant la gestion d'une base de données SQLite.
À qui s'adresse ce livre ?
- Aux étudiants en BTS et IUT Informatique et à leurs enseignants ;
A tous les autodidactes férus de programmation qui veulent découvrir le langage Python.
Édition : Eyrolles - 410 pages, 2e édition, 2 février 2012
ISBN10 : 2212127081 - ISBN13 : 9782212127089
- Chapitre 1 : A l'école des sorciers
- Chapitre 2 : Premiers pas
- Chapitre 3 : Contrôle du flux d'exécution
- Chapitre 4 : Instructions répétitives
- Chapitre 5 : Principaux types de données
- Chapitre 6 : Fonctions prédéfinies
- Chapitre 7 : Fonctions originales
- Chapitre 8 : Utilisation de fenêtres et de graphismes
- Chapitre 9 : Manipuler des fichiers
- Chapitre 10 : Approfondir les structures de données
- Chapitre 11 : Classes, objets, attributs
- Chapitre 12 : Classes, méthodes, héritage
- Chapitre 13 : Classes et interfaces graphiques
- Chapitre 14 : Et pour quelques widgets de plus...
- Chapitre 15 : Analyse de programmes concrets
- Chapitre 16 : Gestion d'une base de données
- Chapitre 17 : Applications web
- Chapitre 18 : Communications à travers un réseau et multithreading
- Annexe A : Installation de Python
- Annexe B : Solutions des exercices
Gérard Swinnen démontre avec ce livre un sens de la pédagogie incroyable. Très axé débutant, il y explique les bases de la programmation de manière claire et précise. Chaque chapitre propose de petits exercices simples et très bien ciblés, ce qui donne envie de jouer avec Python et captive le lecteur.
Les derniers chapitres vous présenteront des notions avancées comme le web, les bases de données, les réseaux et le multithreading.
Si vous êtes déjà très expérimentés dans un autre langage, ce livre n'est pas adapté et passez votre chemin ; il est vraiment destiné aux débutants ou peut servir d'excellent support de cours.
Mon seul regret concerne les parties Tkinter. J'aurais préféré une API telle que PyQt plus moderne.