Depuis l’édition 2023 des concours, Python est au programme pour les prépas ECG.
Que vous soyez en Mathématiques approfondies ou en Mathématiques appliquées, vous ne pouvez pas faire l’impasse sur ce langage de programmation. Vous aurez besoin de maîtriser Python pour les épreuves écrites, mais aussi à l’oral, particulièrement si vous êtes admissibles à ESCP, ENSAE ou HEC Paris.
Lorsque j’étais en prépa, nombreux sont les élèves qui ont abandonné Python dès le début de la prépa, jugeant cet apprentissage « difficile » ou « inutile ». Ne vous sous-estimez pas ! Vous avez encore un ou deux ans pour vous perfectionner en Python, et ce n’est pas très difficile.
Pour progresser en Python, voici les ressources à votre disposition :
- Les cours de vos professeurs
- Les fiches thématiques Mister Prépa (voir en fin d’article)
- Les exercices ou DS corrigés
- Vos propres expérimentations et recherches internet
- Vos propres expérimentations et recherches internet” par “(il existe de nombreuses formations en ligne pour apprendre Python)
Voici donc les dix commandements que vous devrez appliquer pour maîtriser Python et bien progresser durant votre prépa.
1. Dès le début de la prépa vous travaillerez
Trop nombreux sont les élèves qui lâchent Python dès le début de la prépa. Si vous ratez les premiers cours ou si vous n’y êtes pas assez attentifs, vous n’aurez pas les fondements indispensables en Python. Et une fois que vous avez raté le train, difficile de le rattraper en cours d’année !
2. Avec régularité vous vous entraînerez
Une fois que vous aurez commencé l’apprentissage du Python, l’important sera de tenir dans la durée. Et pour cela, il faut vous fixer une routine. Je vous suggère de consacrer une heure par semaine à Python, par exemple le week-end ou juste après le cours hebdomadaire. Pendant cette séance, il est recommandé de reprendre le contenu du cours précédent pour le comprendre, combler les éventuelles lacunes et l’assimiler.
Lire aussi : L’importance d’une routine en prépa
3. Des fiches thématiques vous créerez ou apprendrez
Python en prépa ECG, c’est avant tout un grand nombre de commandes classées par thèmes : algèbre linéaire, simulation de variables aléatoires, représentations graphiques, etc. La meilleure manière de toutes les maîtriser est de les répertorier dans des fiches thématiques que vous complèterez au fil des deux années. Et Mister Prépa est là pour vous aider ! Retrouve à la fin de l’article nos fiches thématiques Python.
4. La correction sans la comprendre vous ne recopierez pas
Lorsqu’on débute en Python, la tentation est grande de recopier les scripts proposés par son professeur sans les comprendre. Il est essentiel d’expérimenter par vous-même, de comprendre avant d’apprendre. Si cette règle peut s’appliquer dans de nombreux domaines, elle est particulièrement vérifiée en Python. En effet, de nombreuses réponses sont possibles pour chaque question Python. Il y a un grand nombre de scripts possibles pour chaque tâche. Aussi, je vous conseille de commencer par lire la correction, puis d’essayer de la reproduire sans la regarder.
5. Les scripts classiques vous connaîtrez
Le commandement précédent ne vous dispense pas d’apprendre les grands classiques. Vous comprendrez vite que certains scripts et certaines structures reviennent très souvent à l’identique dans les questions Python. Par exemple : la méthode de la dichotomie, la méthode des rectangles, la simulation d’une variable aléatoire suivant une loi uniforme, la représentation graphique d’une suite… Pour vous aider, nous vous avons préparé une série de fiches regroupant tous ces fondamentaux (voir en fin d’article)
6. Sur vos ordinateurs vous pratiquerez
Lorsque l’on croit connaître les scripts classiques évoqués dans le commandement 4, il est important de se tester. Ce n’est pas parce que l’épreuve se déroule sur papier qu’il faut ranger vos ordinateurs et ne plus jamais les rallumer. En effet, c’est grâce à ce dernier que vous pourrez vous autocorriger en implémentant vos scripts pour les tester.
Sur quel logiciel ? Tout vous est expliqué dans cet article : Maîtriser Python en prépa ECG #0 : prise en main et fondamentaux
Vous aurez sans doute de nombreuses erreurs à corriger au début : mais c’est en cherchant l’erreur qu’on ne la reproduit plus ensuite. Prenez le temps de taper vos scripts, de les exécuter, de corriger les erreurs de syntaxe, de les améliorer. C’est ainsi que l’on progresse en Python.
7. La syntaxe par cœur vous apprendrez
Vous comprendrez vite que vous n’avez pas le droit à l’erreur dans un script Python. Soit la syntaxe est respectée (par exemple, l’indentation à l’intérieur d’une fonction) et vos scripts s’exécuteront, soit il vous manque une petite parenthèse et un énooorme message d’erreur s’affichera.
Et dans vos copies de concours, vous n’aurez pas le droit à la vérification de l’ordinateur. Aussi, vous devez être particulièrement vigilants quant à la syntaxe. Par exemple, on écrira : np.eye(3,3) mais np.ones((1,1)).
Attention aussi à la présentation de vos codes à l’écrit. Respectez les indentations et tracez des traits verticaux pour marquer clairement ces indentations.
8. Avec rigueur vos scripts vous construirez
Dans les copies, la majorité des erreurs aux questions Python sont des erreurs d’inattention. Chaque type de script s’accompagne d’une structure spécifique qu’il faut à tout prix respecter.
Par exemple :
- Un
def … :
attend unreturn
à la fin du script. - Toute variable doit être introduite avant d’être utilisée
9. Curieux(se) vous serez
Contrairement aux mathématiques, il n’y a pas de formules hors-programme en Python. Le programme officiel des prépas ECG (accessible ici) mentionne :
- Une liste de commandes « exigibles» : c’est la base sur laquelle vous ne pouvez faire l’impasse. Par exemple
np.array([1,2],[3,4])
- Une liste de commandes « non exigibles » : ce sont d’utiles compléments que vous ne devriez pas ignorer. Par exemple :
np.vectorize(f)
pour vectoriser une fonction que vous appliquerez à des vecteurs
Et il y a aussi les commandes que le programme ne mentionne pas :
A@B
pour le produit matriciel (plutôt quenp.dot(A,B)
)a//b
eta%b
pour la division euclidienne dans Python : super utile ; par exemple pour vérifier qu’un nombre est divisible par 2 :assert a%2==0
- Et plein d’autres commandes bien utiles (voir fiches thématiques !)
Même si en théorie, vous pouvez vous contenter de la première catégorie de commandes, vous aurez souvent besoin de commandes non exigibles ou non mentionnées dans le programme. Et rien ne vous empêche de les utiliser dans une copie !
Alors, n’hésitez pas à chercher sur internet de nouvelles commandes avec lesquelles vous pourrez impressionner ton khôlleur/correcteur/jury. À condition de les utiliser correctement !
10. À sa juste valeur Python vous apprécierez
Après avoir lu cet article, vous avez sans doute compris que travailler Python est très important. Mais il faut aussi savoir relativiser.
A l’écrit, les questions Python sont vraiment minoritaires par rapport aux questions de mathématiques dans les DS. On estime que les questions Python valent 10 à 15% des points aux épreuves de mathématiques des Parisiennes. En pratique, le nombre de questions Python se compte sur les doigts d’une main. Le but est donc de ne pas perdre ces points.
A l’oral, c’est déjà autre chose. Si vous êtes en Mathématiques appliquées, vous avez de grandes chances de tomber sur des sujets Python. En mathématiques approfondies aussi, les questions Python sont fréquentes. Le jury peut aussi vous demander, du tac au tac, de lui proposer un programme Python pour représenter la suite de l’exercice ou entrer la matrice dans Python. Personnellement, étant en Maths approfondies, je n’ai eu de questions Python ni à HEC, ni à l’ESCP, mais j’en ai eu plusieurs à l’ENSAE.
Alors sachez travailler Python avec mesure : ni trop rarement, ni trop longtemps !
Lire ensuite : maîtriser Python en prépa ECG #0 [lien à venir courant septembre]
Retrouve des cours de mathématiques gratuits sur notre plateforme Prépa+ :