Les meilleurs livres Python

Les meilleurs livres Python

Python est un langage de programmation incroyable. Il peut être appliqué à presque toutes les tâches de programmation, permet un développement et un débogage rapides et apporte le soutien de ce qui est sans doute la communauté d’utilisateurs la plus accueillante.

Commencer avec Python, c’est comme apprendre toute nouvelle compétence: il est important de trouver une ressource avec laquelle vous vous connectez pour guider votre apprentissage. Heureusement, il ne manque pas d’excellents livres qui peuvent vous aider à apprendre à la fois les concepts de base de la programmation et les spécificités de la programmation en Python. Avec l’abondance de ressources, il peut être difficile d’identifier quel livre conviendrait le mieux à votre situation.

Dans cet article, nous mettons en évidence les meilleurs livres pour apprendre Python à travers une collection de critiques de livres. Chaque critique vous donne un avant-goût du livre, des sujets traités et du contexte utilisé pour illustrer ces sujets. Différents livres résonneront avec différentes personnes, selon le style et la présentation des livres, les antécédents des lecteurs, ainsi que d’autres facteurs.

Si vous êtes nouveau sur Python, l’un des liens: # best-books-for-learning-python [livres d’introduction] vous donnera une base solide dans les bases.

Peut-être que vous voulez apprendre le Python avec votre enfant, ou peut-être enseigner le Python à un groupe d’enfants. Consultez le lien: # best-python-books-for-kids [les meilleurs livres en python pour enfants] pour des ressources destinées à un public plus jeune.

Au fur et à mesure que vous progressez dans votre parcours Python, vous voudrez creuser plus profondément pour maximiser l’efficacité de votre code. Le lien: # meilleurs-livres-python intermédiaires et avancés [meilleurs livres Python intermédiaires et avancés] fournit des informations pour vous aider à améliorer vos compétences en Python, vous permettant de devenir un expert Pythonista.

Après avoir lu ces critiques, si vous ne savez toujours pas quel livre choisir, les éditeurs fournissent souvent un exemple de chapitre ou de section pour vous donner un exemple de ce que propose le livre. La lecture d’un échantillon du livre devrait vous donner l’image la plus représentative du rythme, du style et des attentes de l’auteur.

Quel que soit le livre qui se démarque le plus, pensez à cette anecdote de l’un de nos critiques de livres, Steven C. Howell:

_ _ "Un professeur préféré m’a dit un jour:" Peu importe le livre que vous lisez en premier. C’est toujours le deuxième qui a le plus de sens. »

Je ne peux pas dire que cela a toujours été le cas pour moi, mais j’ai définitivement trouvé qu’une deuxième référence peut faire toute la différence lorsque la première m’a laissé perplexe ou frustré.

Lors de l’apprentissage des cours de Python, j’ai eu du mal à me référer aux exemples utilisés dans les deux premiers livres que j’ai choisis. Ce n’est que dans le troisième livre auquel j’ai fait référence que les concepts ont commencé à cliquer.

La leçon importante est que si vous êtes coincé ou frustré et que les ressources dont vous disposez n’aident pas, alors n’abandonnez pas. Regardez un autre livre, recherchez sur le Web, posez la question sur un forum ou faites simplement une pause. » _ _

*Remarque:* Cet article contient des liens d'affiliation vers des détaillants comme Amazon, vous pouvez donc prendre en charge Real Python en cliquant et en effectuant un achat sur certains des liens. L'achat à partir de l'un de ces liens ne vous coûte rien. Les liens d'affiliation n'influencent en aucun cas nos décisions éditoriales.

Meilleurs livres pour apprendre Python

Si vous débutez avec Python, vous êtes probablement dans l’une des deux situations suivantes:

  1. Vous êtes nouveau dans la programmation et souhaitez commencer par apprendre Python.

  2. Vous avez une expérience raisonnable en programmation dans une autre langue et souhaitez maintenant apprendre Python.

Cette section se concentre sur le premier de ces deux scénarios, avec des critiques des livres que nous considérons comme les meilleurs livres de programmation Python pour les lecteurs qui sont nouveaux en programmation et en Python. Par conséquent, ces livres ne nécessitent aucune expérience préalable en programmation. Ils partent des bases absolues et enseignent les concepts de programmation généraux ainsi que la façon dont ils s’appliquent à Python.

*Remarque:* Si vous recherchez *les meilleurs livres Python pour les programmeurs expérimentés* , envisagez la sélection suivante de livres avec des critiques complètes dans le lien: # best-books-for-learning-python [intro] et le lien: # meilleures sections [avancées] de livres en python intermédiaires et avancés:
  • lien: # think-python [Think Python]: le plus basique de cette liste, Think Python fournit une référence Python complète.

  • link: # fluent-python [Fluent Python]: Alors que la simplicité de Python vous permet de commencer rapidement le codage, ce livre vous apprend à écrire du code Python idiomatique, tout en abordant plusieurs sujets profonds du langage.

  • lien: # effective-python-59-façons-d’écrire-mieux-python [Effective Python: 59 façons d’écrire mieux Python]: Ce livre relativement court est une collection de 59 articles qui, comme Fluent Python, se concentrent sur l’enseignement vous comment écrire du code vraiment Pythonic.

  • lien: # python-cookbook [Python Cookbook]: En tant que livre de cuisine, ce sera une bonne référence sur la façon d’utiliser Python pour effectuer des tâches que vous avez effectuées dans une autre langue.

Alternativement, vous pouvez même préférer aller directement à https://docs.python.org/3/tutorial/index.html par le Tutoriel Python officiel], une ressource bien écrite et complète.

Cours intensif Python

Eric Matthes _ (No Starch Press, 2016) _

Python Crash Course

Il fait ce qu’il dit sur l’étain et il le fait très bien. Le livre commence par une présentation pas à pas des éléments de base Python et des structures de données, en passant par des variables, des chaînes, des nombres, des listes et des tuples, décrivant comment vous travaillez avec chacun d’eux.

Ensuite, les instructions + if + et les tests logiques sont couverts, suivis d’une plongée dans les dictionnaires.

Après cela, le livre couvre les entrées utilisateur, les boucles + while +, les fonctions, les classes et la gestion des fichiers, ainsi que les tests de code et le débogage.

Ce n’est que la première moitié du livre! Dans la seconde moitié, vous travaillez sur trois projets majeurs, créant des applications intelligentes et amusantes.

Le premier projet est un jeu Alien Invasion, essentiellement Space Invaders, développé à l’aide du package + pygame +. Vous concevez un vaisseau (en utilisant des classes), puis programmez comment le piloter et lui faire tirer des balles. Ensuite, vous concevez plusieurs classes d’extraterrestres, vous faites bouger la flotte extraterrestre et vous pouvez les abattre. Enfin, vous ajoutez un tableau de bord et une liste des meilleurs scores pour terminer le jeu.

Après cela, le prochain projet couvre la visualisation des données avec + matplotlib +, des promenades aléatoires, des dés roulants et un peu d’analyse statistique, créant des graphiques et des diagrammes avec le package + pygal +. Vous apprendrez à télécharger des données dans une variété de formats, à les importer dans Python et à visualiser les résultats, ainsi qu’à interagir avec les API Web, à récupérer et à visualiser les données de GitHub et HackerNews.

Le troisième projet vous guide à travers la création d’une application Web complète utilisant Django pour créer un journal d’apprentissage pour suivre ce que les utilisateurs ont étudié. Il explique comment installer Django, configurer un projet, concevoir vos modèles, créer une interface d’administration, configurer des comptes d’utilisateurs, gérer les contrôles d’accès par utilisateur, styliser l’ensemble de votre application avec Bootstrap, puis enfin la déployer sur Heroku .

Ce livre est bien écrit et bien organisé. Il présente un grand nombre d’exercices utiles ainsi que trois projets stimulants et divertissants qui composent la seconde moitié du livre. _ (Revu par David Schlesinger.) _

Head-First Python, 2e édition

Paul Barry _ (O’Reilly, 2016) _

Head-First Python

J’aime vraiment la série de livres Head-First, même si leur poids global est certes plus léger que la plupart des autres recommandations de cette section. Le compromis est que cette approche rend le livre plus convivial.

Si vous êtes le genre de personne qui aime apprendre des choses un petit morceau assez autonome à la fois, et que vous voulez avoir beaucoup d’exemples concrets et d’illustrations des concepts impliqués, alors la série Head-First est pour vous . Le site Web de l’éditeur dit ce qui suit au sujet de leur approche:

_ «Basé sur les dernières recherches en sciences cognitives et en théorie de l’apprentissage, _Head-First Python utilise un format visuellement riche pour engager votre esprit, plutôt qu’une approche lourde de texte qui vous endort. Pourquoi perdre votre temps à lutter avec de nouveaux concepts? Cette expérience d’apprentissage multisensorielle est conçue pour le fonctionnement réel de votre cerveau. » (Source) __

Plein à craquer d’illustrations, d’exemples, d’aux-côtés et d’autres petits morceaux, Head-First Python est constamment attrayant et facile à lire. Ce livre commence sa visite de Python en plongeant dans des listes et en expliquant comment les utiliser et les manipuler. Il passe ensuite dans les modules, les erreurs et la gestion des fichiers. Chaque sujet est organisé autour d’un projet fédérateur: la construction d’un site Web dynamique pour un entraîneur sportif d’école utilisant Python via une interface de passerelle commune (CGI).

Après cela, le livre passe du temps à vous apprendre à utiliser une application Android pour interagir avec le site Web que vous avez créé. Vous apprenez à gérer les entrées utilisateur, à manipuler les données et à examiner les implications du déploiement et de la mise à l’échelle d’une application Python sur le Web.

Bien que ce livre ne soit pas aussi complet que certains autres, il couvre une bonne gamme de tâches Python d’une manière qui est sans doute plus accessible, indolore et efficace. Cela est particulièrement vrai si vous trouvez le sujet de l’écriture de programmes quelque peu intimidant au début.

Ce livre est conçu pour vous guider à travers n’importe quel défi. Bien que le contenu soit plus ciblé, ce livre contient beaucoup de matériel pour vous tenir occupé et apprendre. Vous ne vous ennuierez pas. Si vous trouvez que la plupart des livres de programmation sont trop secs, cela pourrait être un excellent livre pour vous lancer dans Python. _ (Révisé par David Schlesinger et Steven C. Howell.) _

Inventez vos propres jeux informatiques avec Python, 4e édition

Al Sweigart _ (Pas d’amidon, 2017) _

Invent Your Own Computer Games with Python

Si les jeux sont votre truc, ou si vous avez même une idée de jeu, ce serait le livre parfait pour apprendre Python. Dans ce livre, vous apprendrez les principes de base de la programmation et de Python avec les exercices d’application axés sur la construction de jeux classiques.

Commençant par une introduction au shell Python et à la boucle REPL, suivi d’un «Hello, World!» De base vous plongez directement dans la création d’un jeu de base de calcul de nombres, couvrant des nombres aléatoires, le contrôle de flux, la conversion de type et les données booléennes. Après cela, un petit script racontant des blagues est écrit pour illustrer l’utilisation des instructions d’impression, des caractères d’échappement et des opérations de chaîne de base.

Le projet suivant est un jeu d’exploration de grottes textuel, Dragon’s Realm, qui vous présente des organigrammes et des fonctions, vous guide à travers la façon de définir vos propres arguments et paramètres, et explique les opérateurs booléens, la portée globale et locale, et le `` sommeil () + `fonction.

Après un bref détour sur la façon de déboguer votre code Python, vous implémentez ensuite le jeu de Hangman, en utilisant des illustrations ASCII, tout en vous renseignant sur les listes, l’opérateur + in +, les méthodes, les instructions + elif +, le module + random + et une poignée de méthodes de chaîne.

Vous étendez ensuite le jeu du pendu avec de nouvelles fonctionnalités, telles que les listes de mots et les niveaux de difficulté, tout en vous familiarisant avec les dictionnaires, les paires valeur/clé et l’affectation à plusieurs variables.

Votre prochain projet est un jeu Tic-Tac-Toe, qui présente quelques concepts d’intelligence artificielle de haut niveau, vous montre comment court-circuiter l’évaluation en conditions, et explique la valeur `+ + + + ainsi que différentes façons d’accéder aux listes .

Votre voyage à travers le reste du livre se déroule dans la même veine. Vous apprendrez des boucles imbriquées lors de la construction d’un jeu de devinettes de nombres de style Mastermind, des coordonnées cartésiennes pour un jeu Sonar Hunt, de la cryptographie pour écrire un chiffre César et de l’intelligence artificielle lors de l’implémentation de Reversi (également connu sous le nom d’Othello), dans lequel l’ordinateur peut jouer. contre lui-même.

Après tout cela, il y a une plongée dans l’utilisation des graphiques pour vos jeux avec PyGame: vous expliquerez comment animer les graphiques, gérer la détection des collisions, ainsi qu’utiliser des sons, des images et des sprites. Pour rassembler tous ces concepts, le livre vous guide dans la création d’un jeu graphique d’évitement d’obstacles.

Ce livre est bien fait, et le fait que chaque projet soit une unité autonome le rend attrayant et accessible. Si vous êtes quelqu’un qui aime apprendre en faisant, alors vous apprécierez ce livre.

Le fait que ce livre n’introduise des concepts qu’en fonction des besoins peut être un inconvénient possible. Bien qu’il soit davantage organisé comme un guide que comme une référence, la large gamme de contenus enseignés dans le contexte de jeux familiers en fait l’un des meilleurs livres pour apprendre Python. _ (Revu par David Schlesinger.) _

Pensez Python: comment penser comme un informaticien, 2e édition

Allen B. Downey _ (O’Reilly, 2015) _

Think Python: comment penser comme un informaticien

Si apprendre Python en créant des jeux vidéo est trop frivole pour vous, pensez au livre d’Allen Downey Think Python, qui adopte une approche beaucoup plus sérieuse.

Comme le titre l’indique, le but de ce livre est de vous apprendre comment les codeurs pensent au codage, et il fait du bon travail. Comparé aux autres livres, il est plus sec et organisé de manière plus linéaire. Le livre se concentre sur tout ce que vous devez savoir sur la programmation de base Python, d’une manière très simple, claire et complète.

Comparé à d’autres livres similaires, il ne va pas aussi loin dans certains des domaines les plus avancés, couvrant plutôt un plus large éventail de documents, y compris des sujets que les autres livres n’abordent pas du tout. Des exemples de tels sujets incluent la surcharge d’opérateur, le polymorphisme, l’analyse d’algorithmes et la mutabilité par rapport à l’immuabilité.

Les versions précédentes étaient un peu légères sur les exercices, mais la dernière édition a largement corrigé cette lacune. Le livre contient quatre projets assez approfondis, présentés sous forme d’études de cas, mais dans l’ensemble, il comporte moins d’exercices d’application dirigée que de nombreux autres livres.

Si vous aimez une présentation étape par étape des faits et que vous souhaitez obtenir un aperçu supplémentaire de la façon dont les codeurs professionnels examinent les problèmes, ce livre est un excellent choix. _ (Révisé par David Schlesinger et Steven C. Howell.) _

Calcul efficace en physique: guide pratique de recherche avec Python

Anthony Scopatz, Kathryn D. Huff _ (O’Reilly, 2015) _

Calcul efficace en physique

C’est le livre que j’aurais aimé avoir quand j’ai appris Python pour la première fois.

Malgré son nom, ce livre est un excellent choix pour les personnes qui n’ont aucune expérience de la physique, de la recherche ou des problèmes informatiques.

C’est vraiment un field guide pour utiliser Python. En plus de vous enseigner réellement Python, il couvre également les sujets connexes, comme la ligne de commande et le contrôle de version, ainsi que les tests et le déploiement de logiciels.

En plus d’être une excellente ressource d’apprentissage, ce livre servira également d’excellente référence Python, car les sujets sont bien organisés avec de nombreux exemples et exercices entrecoupés.

Le livre est divisé en quatre sections bien nommées: Mise en route, Réalisation, Réalisation correcte et Diffusion.

La section Mise en route contient tout ce dont vous avez besoin pour démarrer. Il commence par un chapitre sur les principes fondamentaux de la ligne de commande bash. (Oui, vous pouvez même installer bash pour Windows.) Le livre explique ensuite les fondements de Python, abordant tous les sujets attendus: opérateurs, chaînes, variables, conteneurs, logique, et contrôle de flux. De plus, il y a un chapitre entier dédié à tous les différents types de fonctions, et un autre pour les classes et object-oriented Programming.

S’appuyant sur cette base, la section Getting it Done se déplace dans la zone plus centrée sur les données de Python. Notez que cette section, qui occupe environ un tiers du livre, sera plus applicable aux scientifiques, aux ingénieurs et aux scientifiques des données. Si c’est vous, profitez-en. Sinon, n’hésitez pas à sauter en avant, en sélectionnant toutes les sections pertinentes. Mais assurez-vous de lire le dernier chapitre de la section, car il vous apprendra à déployer des logiciels à l’aide de pip, conda, machines virtuelles et conteneurs Docker.

Pour ceux d’entre vous qui souhaitent travailler avec des données, la section commence par un rapide vue d’ensemble des bibliothèques essentielles pour l’analyse et la visualisation des données. Vous disposez alors d’un chapitre dédié à vous enseigner les sujets des expressions régulières, NumPy, le stockage de données (y compris les opérations hors cœur), les structures de données spécialisées (tables de hachage, trames de données, arbres D et arbres kd) et le calcul parallèle.

La section Bien faire les choses vous apprend comment éviter et surmonter de nombreux pièges courants associés au travail en Python. Il commence par étendre la discussion sur le déploiement de logiciels en vous apprenant à créer des pipelines de logiciels en utilisant + make +. Vous apprendrez ensuite à utiliser Git et GitHub pour suivre, stocker et organiser vos modifications de code au fil du temps, un processus appelé contrôle de version. La section se termine en vous enseignant comment déboguer et tester votre code, deux compétences incroyablement précieuses.

La dernière section, Get It Out There, se concentre sur la communication efficace avec les consommateurs de votre code, vous-même inclus. Il couvre les sujets de la documentation, des langages de balisage (principalement LaTeX), de la collaboration de code et des licences logicielles. La section et le livre se terminent par une longue liste de projets scientifiques Python organisés par sujet.

Ce livre se démarque car, en plus d’enseigner tous les principes fondamentaux de Python, il vous enseigne également de nombreuses technologies utilisées par les Pythonistes. C’est vraiment l’un des meilleurs livres pour apprendre Python.

Il sert également de grande référence, sera un glossaire complet, une bibliographie et un index. Le livre a définitivement une tournure scientifique en Python, mais ne vous inquiétez pas si vous ne venez pas d’un milieu scientifique. Il n’y a pas d’équations mathématiques, et vous pourriez même impressionner vos collègues quand ils verront que vous êtes en train de lire sur la physique computationnelle! _ (Revu par Steven C Howell.) _

Apprenez Python 3 à la dure

Zed A. Shaw _ (Addison-Wesley, 2016) _

Learn Python 3 The Hard Way

Learn Python the Hard Way est un classique. Je suis un grand fan de l’approche du livre. Lorsque vous apprenez «à la dure», vous devez:

  1. Saisissez vous-même tout le code

  2. Faites tous les exercices

  3. Trouvez vos propres solutions aux problèmes que vous rencontrez

La grande chose à propos de ce livre est la qualité de la présentation du contenu. Chaque chapitre est clairement présenté. Les exemples de code sont tous concis, bien construits et précis. Les exercices sont instructifs et les problèmes que vous rencontrez ne seront pas du tout insurmontables. Votre plus grand risque réside dans les erreurs typographiques. Passez à travers ce livre, et vous ne serez certainement plus un débutant chez Python.

Ne vous laissez pas rebuter par le titre. La «voie difficile» s’avère être la voie facile si vous prenez la vue à long terme. Personne n’aime taper beaucoup de choses, mais c’est ce que la programmation implique réellement, donc c’est bien de s’y habituer dès le début. Une bonne chose à propos de ce livre est qu’il a été affiné à travers plusieurs éditions maintenant, de sorte que tous les bords rugueux ont maintenant été rendus beaux et lisses.

Le livre est construit comme une série de https://learnpythonthehardway.org/book/{over cinquante exercices], chacun s’appuyant sur le précédent et chacun vous enseignant une nouvelle fonctionnalité de la langue. À partir de l’exercice 0, configuration de Python sur votre ordinateur, vous commencez à écrire des programmes simples. Vous en apprendrez plus sur les variables, les types de données, les fonctions, la logique, les boucles, les listes, le débogage, les dictionnaires, la programmation orientée objet, l’héritage et le packaging. Vous créez même un jeu simple en utilisant un moteur de jeu.

Les sections suivantes couvrent des concepts tels que les tests automatisés, l’analyse lexicale des entrées des utilisateurs pour analyser les phrases et le + lpthw.web + package, pour mettre votre jeu sur la toile.

Zed est un écrivain patient et engageant qui ne passe pas sous silence les détails. Si vous travaillez dans ce livre de la bonne façon - la «voie difficile», en suivant les suggestions d’étude fournies tout au long du texte ainsi que les exercices de programmation - vous serez bien au-delà du stade de programmeur débutant lorsque vous aurez terminé. _ (Revu par David Schlesinger.) _

_ "Nous avons remarqué une tendance générale selon laquelle les utilisateurs utilisant [_Learn Python the Hard Way] publient des questions that qui ne font pas beaucoup de sens à la fois sur SO et dans le chat. Cela est dû à la structure et aux techniques utilisées dans le livre. » (Source) __

Ils fournissent leur propre list des tutoriels recommandés, qui comprend les éléments suivants:

Malgré les critiques négatives envers Learn Python the Hard Way, David Schlesinger et Amazon relecteurs conviennent que le livre en vaut la peine, bien que vous souhaitiez probablement compléter votre bibliothèque avec un autre livre Python qui pourrait servir davantage de référence. Assurez-vous également de faire preuve de diligence raisonnable avant de poster des questions sur Stack Overflow, car cette communauté peut parfois être quelque peu abrasive.

Cours de Real Python, partie 1

Real Python Team _ (Real Python, 2017) _

Real Logo Python

Cet eBook est le premier des trois (jusqu’à présent) de la Real Python course series. Il a été écrit dans le but de vous permettre d’être opérationnel et il fait un excellent travail pour atteindre cet objectif. Le livre est un mélange de prose explicative, d’exemple de code et d’exercices de révision. Les exercices de révision entrecoupés renforcent votre apprentissage en vous permettant d’appliquer immédiatement ce que vous avez appris.

Comme pour les livres précédents, des instructions claires sont fournies à l’avance pour installer et exécuter Python sur votre ordinateur. Après la section de configuration, plutôt que de donner une vue d’ensemble des types de données, Real Python commence simplement avec des chaînes et est en fait assez complet: vous apprenez le découpage des chaînes avant d’atteindre la page 30.

Ensuite, le livre vous donne une bonne idée de la saveur de Python en vous montrant comment jouer avec certaines des méthodes de classe qui peuvent être appliquées. Ensuite, vous apprenez à écrire des fonctions et des boucles, à utiliser la logique conditionnelle, à travailler avec des listes et des dictionnaires et à lire et écrire des fichiers.

Ensuite, les choses deviennent vraiment amusantes! Une fois que vous avez appris à installer des packages avec + pip + (et depuis la source), Real Python couvre l’interaction et la manipulation de fichiers PDF, en utilisant SQL depuis Python, en grattant les données des pages Web, en utilisant + numpy + et + matplotlib + `pour faire du calcul scientifique, et enfin, créer des interfaces utilisateur graphiques avec + EasyGUI + et + tkinter + `.

Ce que j’aime le plus à propos de Real Python, c’est qu’en plus de couvrir les bases de manière approfondie et conviviale, le livre explore des utilisations plus avancées de Python qu’aucun des autres livres n’aborde, comme le web-scraping. Il existe également deux volumes supplémentaires, qui vont dans le développement Python plus avancé. _ (Revu par David Schlesinger.) _

  • View On Real Python »

    *Avertissement:* J'ai commencé à utiliser les livres _Real Python_ il y a plusieurs années, alors qu'ils étaient encore en version bêta. Je pensais alors - et je pense toujours maintenant - qu'ils sont l'une des meilleures ressources disponibles pour apprendre le langage Python et plusieurs façons de l'utiliser. Mon concert d'écriture d'articles sur le site Web Real Python est un développement beaucoup plus récent, et ma critique est complètement indépendante. - David

Meilleurs livres Python pour enfants

Les livres suivants sont destinés aux adultes intéressés à enseigner le code aux enfants, tout en l’apprenant eux-mêmes en cours de route. Ces deux livres sont recommandés pour les enfants de 9 ou 10 ans, mais ils sont également parfaits pour les enfants plus âgés.

Il est important de noter que ces livres ne sont pas destinés à être simplement remis à un enfant, en fonction de son âge. Ils seraient idéaux pour un parent qui voulait apprendre le Python aux côtés de son enfant.

Python pour les enfants: une introduction ludique à la programmation

Jason R. Briggs _ (Pas d’amidon, 2013) _

Python pour les enfants: une introduction ludique à la programmation

«Ludique» a raison! C’est un livre amusant pour tous les âges, malgré son titre. Il fournit une introduction claire et facile à suivre à la programmation Python. Il est abondamment illustré, les exemples sont simples et clairement présentés, et c’est un guide solide pour quelqu’un qui veut obtenir une bonne base dans les bases, et un peu plus.

Le livre commence par un excellent guide détaillé pour installer Python sur votre système, que ce soit Windows, OS X ou Ubuntu Linux. Il présente ensuite le shell Python et comment il peut être utilisé comme une simple calculatrice. Cela sert à introduire certains concepts de base comme les variables et le fonctionnement arithmétique.

Ensuite, les itérables sont abordés et le chapitre progresse progressivement à travers des chaînes, des listes, des tuples et des dictionnaires.

Une fois cela fait, la bibliothèque Python + turtle + est utilisée pour commencer à travailler avec les graphiques de tortues, un cadre populaire pour apprendre aux enfants à coder. De là, le livre progresse à travers des instructions conditionnelles, des boucles, des fonctions et des modules.

Les classes et les objets sont couverts, suivis d’une section vraiment excellente sur les fonctions intégrées de Python, puis d’une section sur un certain nombre de bibliothèques et de modules Python utiles. Les graphiques de tortues sont revisités plus en détail, après quoi le livre présente + tkinter + pour créer des interfaces utilisateur, de meilleurs graphiques et même des animations.

Ceci conclut la première partie du livre, «Apprendre à programmer», le reste étant axé sur la construction de deux projets d’application amusants. Le premier projet consiste à créer une version solo de Pong, appelée Bounce! Cela intègre les concepts de programmation des fonctions, des classes et du flux de contrôle, ainsi que les tâches de création d’une interface à l’aide de + tkinter +, illustrant le canevas, effectuant des calculs géométriques et utilisant des liaisons d’événements pour créer l’interactivité.

Dans le deuxième projet, vous construisez un jeu vidéo à défilement latéral, M. Stickman Races pour la sortie. Ce jeu applique bon nombre des mêmes concepts et tâches que Bounce! mais avec plus de profondeur et une complexité accrue. En cours de route, vous découvrirez également le programme de manipulation d’images open source GIMP, utilisé pour créer les ressources de votre jeu. Le livre tire une quantité incroyable de kilométrage de ces deux jeux, et les faire travailler est à la fois instructif et très amusant.

J’aime vraiment ce livre. Que vous soyez jeune ou tout simplement jeune de cœur, vous apprécierez ce livre si vous recherchez une introduction amusante et accessible à Python et à la programmation. _ (Révisé par David Schlesinger et Steven C. Howell.) _

Apprenez à vos enfants à coder: un guide adapté aux parents pour la programmation Python

Bryson Payne _ (Pas d’amidon, 2015) _

Apprenez à vos enfants à coder: un guide des parents pour la programmation Python

Ce livre est similaire au lien: # python-for-kids-a-playful-introduction-to-programming [Python for Kids] mais destiné davantage à un adulte travaillant avec un enfant (ou des enfants) pour apprendre à coder, comme le titre suggère. Une chose qui distingue ce livre de la plupart des liens: # best-books-for-learning-python [livres d’introduction] est l’utilisation de couleurs et d’illustrations sur presque toutes les pages. Le livre est bien écrit et présente l’apprentissage du code comme un moyen d’enseigner aux enfants des techniques de résolution de problèmes.

Comme c’est généralement le cas, ce livre commence par un guide d’installation Python. Comparé au lien: # python-for-kids-a-playful-introduction-to-programming [Python for Kids], le guide de ce livre est plus rapide mais tout à fait adéquat.

La première activité est, encore une fois, les graphiques de tortues. Un certain nombre de variations de base sur le dessin d’un carré pivoté sont présentées - sans beaucoup d’explications sous-jacentes, au départ - juste pour présenter les concepts généraux, mais à la fin de la section, vous aurez une assez bonne compréhension du les bases.

Ensuite, les calculs, les variables et les mathématiques en Python sont expliqués. Une fois que les cordes ont été couvertes, le livre ramène tout cela dans des graphiques de tortues pour améliorer et explorer le travail effectué plus tôt. À ce stade, les explications du code sont extrêmement claires, avec des détails explicites ligne par ligne. Vous auriez du mal à mal comprendre le code présenté.

Les listes sont explorées ensuite, tout comme la fonction + eval () +. Des boucles sont introduites puis utilisées pour créer des graphiques de plus en plus complexes avec la tortue. Les expressions conditionnelles viennent ensuite, avec la logique booléenne et les opérateurs.

La bibliothèque + random + est introduite avec un jeu de devinettes et des spirales placées au hasard faites avec des graphiques de tortues. Vous explorez plus en détail l’aléatoire en mettant en place des dés roulants et en choisissant des cartes, ce qui vous conduit à créer les jeux Yahtzee et War.

Les fonctions, les graphiques plus avancés et l’interaction avec l’utilisateur sont ensuite étudiés.

Le livre se déroule ensuite pour couvrir en utilisant PyGame pour créer des graphiques et des animations encore plus avancés, puis une interaction avec l’utilisateur pour créer un programme de dessin très simple.

À ce stade, vous disposez de tous les outils pour créer de vrais jeux. Le développement d’une version complète de Pong et d’un jeu d’éclatement de bulles est présenté. Les deux offrent suffisamment de profondeur pour poser certains défis et maintenir l’intérêt.

Ce que j’aime le plus dans ce livre, c’est son grand nombre de défis de programmation, ainsi que les excellents résumés à la fin de chaque chapitre vous rappelant ce qui a été couvert. Si vous et votre enfant êtes intéressés par la programmation, ce livre devrait vous prendre tous les deux à bonne distance et vous vous amuserez beaucoup. En tant qu’auteur, Dr. Bryson Payne, a déclaré dans his récent TEDx talk, "Sortez de votre zone de confort, et devenir alphabétisé dans le langage de la technologie. " _ (Révisé par David Schlesinger et Steven C. Howell.) _

Meilleurs livres Python intermédiaires et avancés

Connaître Python est une chose. Savoir ce qu’est Pythonic demande de la pratique. Parfois, la faible barrière de Python à l’entrée donne aux gens l’idée erronée que la langue est moins capable que d’autres langues, que le style n’a pas d’importance ou que les meilleures pratiques ne sont qu’une question de préférence. Avez-vous déjà vu du code Python qui ressemblait à C ou Fortran?

Apprendre à utiliser Python efficacement nécessite une certaine compréhension de ce que Python fait sous le capot. La programmation Pythonic tire parti de la façon dont le langage Python est implémenté pour maximiser l’efficacité de votre code.

Heureusement, il existe d’excellents livres, remplis de conseils d’experts, destinés à vous aider à prendre ce que vous avez appris et à améliorer vos compétences. N’importe quel livre de cette section vous donnera une compréhension plus approfondie des concepts de programmation Python et vous apprendra comment écrire du code Python developer-style. Notez que ce ne sont en aucun cas des livres d’introduction. Ils n’incluent pas les bases du démarrage. Ces livres seront utiles si vous codez déjà en Python et que vous souhaitez perfectionner vos compétences sur votre chemin pour devenir un Pythonista sérieux.

Astuces Python: un buffet de fonctionnalités Python impressionnantes

Dan Bader _ (dbader.org, 2017) _

Python Tricks

Ce livre illustre de précieuses fonctionnalités et meilleures pratiques Python moins connues, écrites pour vous aider à mieux comprendre Python. Chacune des 43 sous-sections présente un concept différent, appelé Trick Python, avec une discussion et des exemples de code faciles à digérer illustrant comment vous pouvez tirer parti de ce concept.

Le contenu du livre est divisé dans les sections suivantes:

  • Modèles pour Cleaner Python

  • Fonctions efficaces

  • Cours & OOP

  • Structures de données communes en Python

  • Boucle et itération

  • Astuces de dictionnaire

  • Techniques de productivité pythonique

Comme il est indiqué sur la couverture, le contenu est organisé sous la forme d’un "buffet", chaque sous-section étant un sujet autonome, avec une brève introduction, des exemples, une discussion et une liste de Clés à retenir. En tant que tel, vous devriez vous sentir libre de sauter dans les sections les plus attrayantes.

En plus du livre, j’ai particulièrement apprécié les 12 vidéos bonus disponibles lorsque vous l’achetez sous forme de livre électronique. Ils ont une durée moyenne de 11 minutes, parfaits pour regarder pendant le déjeuner. Chaque vidéo illustre un concept différent à l’aide d’exemples de code clairs et concis faciles à reproduire. Alors que certaines des vidéos couvraient des concepts familiers, elles fournissaient toujours des informations intéressantes sans s’éterniser. _ (Revu par Steven C. Howell.) _

  • View On Amazon »

  • View On Real Python »

    *Avertissement:* Bien que ce livre soit officiellement distribué via Real Python, je le recommande indépendamment de ma connexion avec Real Python. J'ai acheté ce livre lors de sa sortie, avant d'avoir eu l'occasion d'écrire pour Real Python. Pour plus de preuves de la valeur de ce livre, consultez les https://realpython.com/asins/1775093301#customerReviews[Amazon critiques]: 148, en moyenne 4,8 étoiles sur 5, au moment de cette revue. - Steve

Flyth Python: programmation claire, concise et efficace

Luciano Ramalho _ (O’Reilly, 2014) _

Fluent Python

Ce livre a été écrit pour les programmeurs Python 2 expérimentés qui souhaitent devenir compétents en Python 3. Par conséquent, ce livre est parfait pour quelqu’un avec une base solide dans les bases de Python, 2 ou 3, qui veut prendre ses compétences au niveau suivant. En outre, ce livre fonctionne également bien comme référence pour un programmeur expérimenté d’une autre langue qui souhaite rechercher «Comment faire« + <x> + »en Python?»

Le livre est organisé par sujet afin que chaque section puisse être lue indépendamment. Alors que de nombreux sujets abordés dans ce livre se trouvent dans des livres d’introduction, Fluent Python fournit beaucoup plus de détails, éclairant bon nombre des fonctionnalités les plus nuancées et négligées du langage Python.

Les chapitres sont divisés en six sections:

  1. Prologue : présente la nature orientée objet de Python et les méthodes spéciales qui assurent la cohérence des bibliothèques Python

  2. Structures de données : couvre les séquences, les mappages, les ensembles et la différence entre + str + et + bytes +

  3. Fonctions en tant qu’objets : explique les conséquences des fonctions étant des objets de première classe dans le langage Python

  4. Idiomes orientés objet : inclut les références, la mutabilité, les instances, l’héritage multiple et la surcharge d’opérateur

  5. Flux de contrôle : va au-delà des conditions de base et couvre le concept de générateurs, de gestionnaires de contexte, de coroutines, de la syntaxe + yield from + et de la concurrence à l’aide de + asyncio +

  6. Métaprogrammation : explore les aspects les moins connus des classes, discute des attributs et propriétés dynamiques, des descripteurs d’attributs, des décorateurs de classe et des métaclasses

Avec des exemples de code sur presque chaque page et des appels numérotés reliant des lignes de code à des descriptions utiles, ce livre est extrêmement accessible. De plus, les exemples de code sont orientés vers la console Python interactive, une approche pratique pour explorer et apprendre les concepts présentés.

Je me retrouve à me tourner vers ce livre quand j’ai une question Python et que je veux une explication plus approfondie que celle que j’obtiendrais probablement sur Stack Overflow. J’aime aussi lire ce livre quand j’ai un peu de temps d’arrêt et que je veux juste apprendre quelque chose de nouveau. À plus d’une occasion, j’ai constaté qu’un concept que j’ai récemment appris de ce livre s’est avéré de façon inattendue être la solution parfaite à un problème que je devais résoudre. _ (Revu par Steven C. Howell.) _

  • View On Amazon » *http://shop.oreilly.com/product/0636920032519.do[Voir sur le site Web de l’éditeur »]

Python efficace: 59 façons d’écrire mieux en Python

Brett Slatkin _ (Addison-Wesley, 2015) _

Effective Python: 59 façons d’écrire un meilleur Python

Ce livre est une collection de 59 articles indépendants qui s’appuient sur une compréhension de base de Python pour enseigner les meilleures pratiques Pythonic, des fonctionnalités moins connues et des outils intégrés. Les sujets varient en complexité, en commençant par le simple concept de savoir quelle version de Python vous utilisez et en terminant par le concept le plus compliqué, et généralement ignoré, d’identifier les fuites de mémoire.

Chaque article est une combinaison d’exemples de code, de discussions et d’une liste de choses à retenir.

Étant donné que chaque article est indépendant, c’est un excellent livre pour vous plonger, vous permettant de vous concentrer sur les sujets les plus applicables ou les plus intéressants. Cela le rend également parfait pour lire un article à la fois. Chaque article mesurant environ deux à quatre pages, vous pouvez prendre le temps de lire un article par jour, en terminant le livre en deux à trois mois (selon que vous lisez le week-end).

Les articles sont regroupés dans les 8 chapitres suivants:

* Pythonic Thinking *: présente les meilleures façons d’effectuer des tâches courantes, tout en profitant de la façon dont Python est implémenté
  1. Fonctions : clarifie les différences nuancées des fonctions Python et décrit comment utiliser les fonctions pour clarifier l’intention, promouvoir la réutilisation et réduire les bogues

  2. Classes and Inheritance : décrit les meilleures pratiques lorsque vous travaillez avec des classes Python

  3. Métaclasses et attributs : éclaire le sujet quelque peu mystérieux des métaclasses, vous apprenant à les utiliser pour créer des fonctionnalités intuitives

  4. Concurrence et parallélisme : explique comment savoir écrire des applications multi-thread en Python

  5. Modules intégrés : présente quelques-unes des bibliothèques intégrées moins connues de Python pour rendre votre code plus utile et fiable

  6. Collaboration : discute de la documentation appropriée, de l’empaquetage, de la dépendance et des environnements virtuels

  7. Production : couvre les sujets de débogage, d’optimisation, de test et de gestion de la mémoire

Si vous avez une base solide en Python et que vous souhaitez combler des trous, approfondir votre compréhension et apprendre certaines des fonctionnalités les moins évidentes de Python, ce serait un excellent livre pour vous. _ (Revu par Steven C. Howell.) _

Livre de recettes Python

David Beazley et Brian K. Jones _ (O’Reilly, 3e édition, 2013) _

Python Cookbook

Ce qui distingue ce livre, c’est son niveau de détail. Les cookbooks de code sont généralement conçus comme des manuels courts et simples pour illustrer les façons simples de faire les tâches quotidiennes. Dans ce cas, chaque recette dans Python Cookbook a une solution de code étendu ainsi qu’une discussion de l’auteur sur certains éléments particuliers de la solution.

Chaque recette commence par une déclaration de problème claire, telle que «Vous voulez écrire un décorateur qui ajoute un argument supplémentaire à la signature d’appel de la fonction encapsulée». Il passe ensuite à une solution qui utilise du code, des modèles et des structures de données Python 3 modernes et idiomatiques, passant souvent de quatre à cinq pages à discuter de la solution.

Sur la base de ses exemples plus impliqués et sophistiqués, et de la propre recommandation des auteurs dans la préface, c’est probablement le livre Python le plus avancé de notre liste. Malgré cela, n’ayez pas peur si vous vous considérez comme un programmeur Python intermédiaire. Qui juge, de toute façon? Il y a un vieux dicton qui ressemble à ceci:

_ "La meilleure façon de devenir un meilleur basketteur est de perdre face aux meilleurs joueurs que vous pouvez trouver, plutôt que de battre les pires." _

Vous verrez peut-être des blocs de code que vous ne comprenez pas complètement. Revenez-y dans quelques mois. Relisez ces sections une fois que vous avez choisi quelques concepts supplémentaires, et soudainement, il cliquera. La plupart des chapitres commencent assez simplement, puis deviennent progressivement plus intenses.

La dernière moitié du livre illustre des conceptions comme les motifs de décoration, les fermetures, les fonctions d’accesseur et les fonctions de rappel.

C’est toujours agréable de lire à partir d’une source fiable, et les auteurs de ce livre correspondent certainement à cette facture. David Beazley est un conférencier conseil fréquent lors d’événements tels que PyCon et l’auteur de Python Essential Reference. De même, Brian K. Jones est un CTO, le créateur d’un magazine Python et fondateur du Python User Group à Princeton (PUG-IP).

Cette édition particulière est écrite et testée avec Python 3.3. _ (Revu par Brad Solomon.) _

Obtenez le codage!

L’une des choses impressionnantes à propos de Python est qu’il a une barrière à l’entrée relativement faible, par rapport à de nombreuses autres langues. Malgré cela, l’apprentissage de Python est un processus sans fin. La langue est pertinente pour une telle variété de tâches et évolue tellement qu’il y aura toujours quelque chose de nouveau à découvrir et à apprendre. Bien que vous puissiez acquérir suffisamment de Python pour faire des choses amusantes en une semaine ou deux, les gens qui utilisent Python depuis vingt ans vous diront qu’ils apprennent encore de nouvelles choses qu’ils peuvent faire avec ce langage flexible et évolutif.

Pour finalement réussir en tant que programmeur Python, vous devez commencer par une base solide, puis acquérir une compréhension plus approfondie du fonctionnement du langage et de la meilleure façon de l’utiliser. Pour acquérir une base solide, vous ne pouvez vraiment pas vous tromper avec l’un des liens: # best-books-for-learning-python [meilleurs livres pour apprendre Python]. Si vous voulez apprendre le Python avec un enfant, ou peut-être enseigner à un groupe d’enfants, consultez le lien: # best-python-books-for-kids [liste des meilleurs livres Python pour les enfants]. Après avoir mouillé les pieds, consultez le lien: # best-intermediary and advanced-python-books [meilleurs livres intermédiaires et avancés en Python] pour approfondir des concepts moins évidents qui amélioreront l’efficacité de votre code.

Tous ces livres vous apprendront ce que vous devez savoir pour vous appeler légitimement un codeur Python. Le seul ingrédient manquant est vous.