À l’occasion de l’introduction de Python au lycée, quelques ouvrages relativement (ou très) récents sont recencés dans cet article.
4 livres seront recensés ici :
- Visa pour la prépa, de Guillaume Connan, paru chez Dunod, ISBN 9782100746989
- L’essentiel de l’informatique en prépa, de Frantz Barrault, paru chez Ellipses, ISBN 9782340011496
- Python pour les jeunes débutants, de Frédéric Laroche, paru chez Ellipses, ISBN 9782340004580
- Le petit Python, de Richard Gomez, paru chez Ellipses, ISBN 9782340017863.
Seul ce dernier vise plus ou moins explicitement le lycée, et c’est aussi le plus récent. On y fera donc particulièrement attention.
Article placé sous licence CC-By-SA
Note : Les ouvrages les plus récents, en particulier le document d’accompagnement, utilisent de plus en plus la version 3 de Python. L’auteur de cette recension, que ce soit par nostalgie ou par rebellion, en est encore à la version 2 de Python. Les exemples de cet article seront peut-être à adapter pour les rendre Python3-compatibles. Il s’agit essentiellement de remplacer print sortie par print(sortie), l’instruction print de Python2 étant devenue une fonction lors du passage à Python3.
Pour tester les programmes de cet article, on peut le faire en ligne, en allant sur SofusPy, puis en cliquant sur « éditeur » et en copiant-collant les scripts Python dans la console qui apparaît alors.
Connan
Visa pour la prépa est, a priori, un livre de maths (il est une sorte de résumé de ce qui a été vu avant le bac et servira après, assorti de compléments utiles, notamment sur la théorie de l’intégration). Mais, outre le fait qu’il comporte un chapitre spécifiquement dédié à la programmation, des exemples en Python parsèment l’ouvrage, ce qui le rend intéressant pour chercher au moins des exemples d’utilisation de Python en maths au lycée.
Bien que pas destiné à des élèves de 2nde, l’ouvrage de Guillaume Connan peut servir ne serait-ce que par son côté « SymPy par l’exemple ».
Le livre de Guillaume Connan peut servir à préparer des séquences Python en lycée, par les exemples qu’il contient et qui peuvent donner des idées d’activités. Le seul problème étant qu’il manque un peu de géométrie, mais c’est semble-t-il une conséquence des programmes de prépa...
Barrault
L’essentiel de l’informatique en prépa, comme son titre l’indique, n’est pas spécialement destiné à l’usage de Python en cours de maths au lycée. En fait les premiers et les derniers chapitres du livre seraient plus utiles en cours d’ICN ou d’ISN qu’en maths. Cependant, les chapitres consacrés à l’analyse et à l’algèbre linéaire comprennent des exemples suffisamment courts pour servir de base à des exercices de niveau lycée.
Comme Guillaume Connan (voir onglet précédent), Franz Barrault préfère les lambda-fonctions aux définitions de fonctions.
Il est à remarquer qu’en 2017, tous les sujets d’informatique des concours aux grandes écoles, ainsi que le sujet d’informatique du Capes de maths, comportaient des questions sur la complexité, notamment des algorithmes de tri...
Comme l’ouvrage de l’onglet précédent, celui de Frantz Barrault peut inspirer des exemples au lycée, et montre, par les exemples, la syntaxe des bibliothèques utilisées en prépa. Toutefois, il est moins axé sur les maths et serait plus utile en ICN (notamment de par la présence de SQL) qu’en maths.
Laroche
Apprendre à programmer en Python est sous-titré pour jeunes débutants de 7 à 97 ans. C’est la borne inférieure qui surprend, au vu du contenu [4]. Le livre a son site compagnon dont le style évoque assez bien le style « bricolage sous Windows » que l’on voit tout au long du livre...
Ce livre, issu, du propre aveu de l’auteur, de l’observation d’élèves de terminale S en ISN, semble être adapté à l’enseignement de l’informatique en terminale et non à l’enseignement des maths avant la terminale. On peut y trouver des idées de projets mobilisant des notions de maths, mais pour ce faire il faut chercher dans les plus de 300 pages, l’ordre logique du livre n’étant adapté ni à l’utilisation de Python pour les maths, ni à une progression pédagogiquement axée sur les maths.
Gomez
Le petit Python n’est pas si petit que ça puisqu’il dépasse les 400 pages. Ce livre n’a pas vocation à être lu mais plutôt à être régulièrement consulté en cas de trou de mémoire sur la syntaxe de Python :
Le lecteur n’est pas obligé de lire les chapitres dans l’ordre, il peut aller directement à l’endroit où on trouve l’information cherchée.
Comme le montrent les exemples ci-dessus, le livre de Richard Gomez est plus une source d’informations qu’un manuel. Un exemple d’utilisation pourrait être celui-ci, absolument pas cité dans l’ouvrage :
Comment simuler en Python une loi de Xenakis ?
En feuilletant le chapitre sur les probabilités, on voit un dessin d’un triangle. On apprend alors que Python (ou plus précisément son module random) sait simuler des lois triangulaires. Le dessin suggère de prendre a et m égaux à 0 et b, à 1. D’où ce script :
- from random import *
- import matplotlib.pyplot as dessin
- stats = [triangular(0,1,0) for n in range(100000)]
- dessin.hist(stats,100)
- dessin.show()
Lequel script donne un histogramme bien triangulaire comme il se doit :
On peut dire que ce livre est une sorte de catalyseur pour créer des activités mathématiques avec Python 3.
Aucun des livres recensés ici n’est explicitement titré mathématiques en Seconde avec Python. Mais 3 d’entre eux peuvent se montrer utiles pour le nouveau programme de Seconde, parce que même sans le dire, il y a des maths dedans, et parce que les scripts sont souvent assez courts pour qu’on envisage de faire quelque chose de ce genre en classe.