Comprendre comment fonctionne un interpréteur python :
On se lance souvent dans un code et dans une programmation sur son IDE favori sans avoir réellement compris comment un ordinateur, outil totalement numérique, fait pour comprendre des ordres écrit en Anglais principalement, et les exécuter par la suite. Pour comprendre cela, gardons en tête que nos ordinateurs ne comprennent individuellement, que peu de choses, 0101010101…
Avant tout, rappelons qu’un interpréteur Python est un programme qui exécute du code Python. Lorsque vous exécutez un script, l’interpréteur lit votre code ligne par ligne et exécute les instructions que vous avez écrites. On remarque que l’interpréteur interactif python, celui qui « répond » directement dans la console lorsque vous y saisissez une commande peut effectuer des actions ne nécessitant pas de mots spécifiques au langage Python, comme de simples opérations mathématiques :
Opérateur | Rôle | Méthode équivalente |
# (dièse) | Introduction d’un commentaire | |
« » (guillemets) ou » (apostrophes) | Encadrement du texte | |
+ (plus) | Addition, et concaténation de chaînes de caractères | add(), et concat() |
– (moins) | Négation, soustraction | neg(), sub() |
* (étoile) | Multiplication de chiffres, ou wildcard des caractères | mul() |
/ (barre oblique), et // | Division de chiffres | div(), truediv(), et floordiv() |
< | Inférieur à | lt() |
> | Supérieur à | gt() |
<= | Inférieur ou égal à | le() |
>= | Supérieur ou égal à | ge() |
= (égal) | Définition de variable(s) | |
== | Égal à | eq() |
!=, ou <> (chevrons) | Différent de | ne() |
() (parenthèses) | Appel d’une fonction ou méthode | call() |
[] (crochets) | Accès à une liste indexée | getitem(), getslice() |
, (virgule) | Séparation de paramètres | |
. (point) | Virgule décimale, ou séparation des paramètres avec leur méthode | |
** (étoiles) | Puissance (ou exposant) | pow() |
% | Modulo | mod() |
+= | Incrémentation | |
-= | Décrémentation | |
<< | Modification de gauche | lshift() |
>> | Modification de droite | rshift() |
& (et commercial) | Bit à bit « et » | and() |
| (barre verticale) | Bit à bit « ou » | or() |
^ (accent circonflexe) | Bit à bit « ou exclusif » | xor() |
~ (tilde) | Bit à bit « inversion » | invert() |
Rappelons ce qu’est un langage interprété :
Un langage interprété est un langage qui est lu ligne par ligne par un interpréteur. L’interpréteur va passer à travers chaque ligne de votre code Python pour le traduire en langage machine (votre ordinateur ne sait pas exécuter du code Python directement, il a besoin de langage machine). La traduction se fait en temps réel, lors de l’exécution. L’un des avantages est qu’un même script peut être exécuté sur plusieurs plateformes différentes, en revanche la traduction (interprétation) du code à chaque exécution a un impact sur les performances.
Si vous donnez votre script Python à un de vos amis qui n’a pas d’interpréteur Python sur sa machine, il ne pourra pas exécuter votre script.
Le langage machine est la suite de bits qui est interprétée par le processeur de l’ordinateur lors de l’exécution d’un programme. C’est le langage natif du processeur, et le seul qui soit reconnu par celui-ci. Un processeur ne peut comprendre un langage rentré par l’utilisateur, un programme python ou java par exemple. Un langage interprété, c’est donc tout d’abord un langage qui a besoin d’un interpréteur pour fonctionner. Dans le cas de Python on parle donc de l’interpréteur Python.
Ce langage machine qui s’identifie en bits signifie :
Pour clôturer l’interpréteur Python, on utilise la commande
exit()
Afin de réaliser ce tuto ainsi que cet article, j’ ai avant tout eu des difficultés a me documenter de façon précise, puisque les recherches que j’effectuais qui paraissaient pourtant les plus claires possibles, ne m’apportaient pas de véritable réponse en lien avec ma requête, tel le jour ou j ai voulu comprendre une notion dont peu de monde s’attarde dessus ; la compréhension de l anglais par un logiciel 🤔
Les deux modes d’utilisation du langage Python
Au sein de l’interpréteur python, il faut distinctement savoir différencier les deux modes d utilisations du langage python, qui sont le mode Interactif, ainsi que le mode Script.
- Le mode interactif : Dans le mode interactif, aussi appelé mode console, l’interpréteur vous permet d’encoder les instructions une à une. Aussitôt une instruction encodée, il suffit d’appuyer sur la touche ENTER pour que l’interpréteur l’exécute. Pour quitter le mode interactif, il suffit d’exécuter l’instruction
exit(
). Il s’agit de nouveau d’une fonction prédéfinie de Python permettant de quitter l’interpréteur. Le mode interactif est très pratique pour rapidement tester des instructions et directement voir leurs résultats. Son utilisation reste néanmoins limitée à des programmes de quelques instructions. En effet, devoir à chaque fois retaper toutes les instructions s’avèrera vite pénible. - Le mode script : Dans le mode script où vous devez avoir préalablement écrit toutes les instructions de votre programme dans un fichier texte, et l’avoir enregistré sur votre ordinateur. On utilise généralement l’extension de fichier .py pour des fichiers contenant du code Python. Une fois cela fait, l’interpréteur va lire ce fichier et exécuter son contenu, instruction par instruction, comme si vous les aviez tapées l’une après l’autre dans le mode interactif. Les résultats intermédiaires des différentes instructions ne sont par contre pas affichés ; seuls les affichages explicites (avec la fonction
print
, par exemple) se produisent.
L’interpréteur python a évolué continuellement depuis sa création, durant la fin du XXème . Afin de comprendre et de considérer au mieux la progression de cette structure, est référencé un site html retraçant brièvement ces différents points de vus et paliers au cours du temps.
En conclusion, Il est important de comprendre comment fonctionne l’interpréteur Python pour pouvoir écrire du code efficacement et le faire exécuter correctement. En effet, l’interpréteur joue un rôle clé dans la traduction du code Python en instructions compréhensibles par la machine, et cela peut avoir un impact sur la performance et la fiabilité du programme. Par conséquent, il est essentiel de prendre en compte les particularités de l’interpréteur lors de l’écriture du code et de s’assurer qu’il est correctement exécuté. Insistons sur le fait que python joue un rôle d’intermédiaire entre celui qui écrit le code et l’ordinateur
Élève au lycée Louis Pasteur en 1ere spé NSI.