Comment travailler avec la console interactive Python

Introduction

La console interactive Python (également appelée interpréteur Python ou shell Python) offre aux programmeurs un moyen rapide d’exécuter des commandes et d’essayer ou de tester du code sans créer de fichier.

Offrant un accès à toutes les fonctions intégrées de Python et à tous les modules installés, à l’historique des commandes et à l’autocomplétion, la console interactive offre la possibilité d’explorer Python et la capacité de coller du code dans des fichiers de programmation lorsque vous êtes prêt.

Ce tutoriel expliquera comment travailler avec la console interactive Python et comment en tirer parti en tant qu’outil de programmation.

Prérequis

Vous devez avoir Python 3 installé et un environnement de programmation configuré sur votre ordinateur ou serveur. Si vous n’avez pas d’environnement de programmation configuré, vous pouvez vous référer aux guides d’installation et de configuration pour un environnement de programmation local ou pour un environnement de programmation sur votre serveur approprié à votre système d’exploitation (Ubuntu, CentOS, Debian, etc.).

Entrer dans la console interactive

La console interactive Python peut être accédée depuis n’importe quel ordinateur local ou serveur avec Python installé.

La commande que vous utiliserez pour entrer dans la console interactive Python de votre version par défaut de Python est :

  1. python3

Si vous utilisez un environnement Python virtuel local, vous entrerez dans la version par défaut de Python avec :

  1. python

Si vous avez configuré un environnement de programmation selon la section des prérequis, vous pouvez lancer et accéder à la version de Python et aux modules que vous avez installés dans cet environnement en y entrant d’abord avec la commande suivante :

  1. cd environments
  2. . my_env/bin/activate

Puis en tapant la commande python :

  1. python

Dans ce cas, la version par défaut de Python est Python 3.8.10, qui est affichée dans la sortie une fois que nous avons entré la commande, ainsi que l’avis de droit d’auteur pertinent et quelques commandes que vous pouvez taper pour obtenir des informations supplémentaires :

Output
Python 3.8.10 (default, Jun 2 2021, 10:49:15) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>

Le prompt principal pour la prochaine commande est trois plus grands que (>>>) :

Vous pouvez cibler des versions spécifiques de Python en ajoutant le numéro de version à votre commande, sans espaces :

Note : À partir de janvier 2020, Python 2 a été abandonné et aucune amélioration ne sera plus apportée. Pour en savoir plus, consultez [Sunsetting Python 2] (https://www.python.org/doc/sunset-python-2/)

  1. python2.7
Output
Python 2.7.18 (default, Mar 8 2021, 13:02:45) [GCC 9.3.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>

Ici, nous avons reçu la sortie indiquant que Python 2.7.18 sera utilisé. Si c’est notre version par défaut de Python 2, nous aurions également pu accéder à cette console interactive avec la commande python2.

Alternativement, nous pouvons appeler la version par défaut de Python 3 avec la commande suivante :

  1. python3
Output
Python 3.8.10 (default, Jun 2 2021, 10:49:15) [GCC 9.4.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>

Nous aurions également pu appeler la console interactive ci-dessus avec la commande python3.8.

Avec la console interactive Python en cours d’exécution, nous pouvons passer à travailler avec l’environnement shell pour Python.

Travailler avec la Console Interactive Python

L’interpréteur interactif Python accepte la syntaxe Python, que vous placez après le préfixe >>>.

Nous pouvons, par exemple, attribuer des valeurs à des variables :

  1. birth_year = 1868

Une fois que nous avons attribué la valeur entière de 1868 à la variable birth_year, nous appuierons sur Entrée et recevrons une nouvelle ligne avec les trois signes de plus grands que comme préfixe :

  1. birth_year = 1868

Nous pouvons continuer à attribuer des variables et ensuite effectuer des calculs mathématiques avec des opérateurs pour obtenir des calculs retournés :

>>> birth_year = 1868
>>> death_year = 1921
>>> age_at_death = death_year - birth_year
>>> print(age_at_death)
53
>>> 

Comme nous le ferions avec un script dans un fichier, nous avons attribué des variables, soustrait une variable de l’autre, et demandé à la console d’imprimer la variable qui représente la différence.

Tout comme dans n’importe quelle forme de Python, vous pouvez également utiliser la console interactive comme une calculatrice:

>>> 203 / 20
10.15
>>> 

Ici, nous avons divisé l’entier 203 par 20 et avons obtenu le quotient de 10,15.

Plusieurs lignes

Lorsque nous écrivons du code Python qui couvrira plusieurs lignes, l’interpréteur utilisera le prompt secondaire pour les lignes de continuation, trois points (...).

Pour sortir de ces lignes de continuation, vous devrez appuyer deux fois sur ENTRÉE.

Nous pouvons voir à quoi cela ressemble dans le code suivant qui attribue deux variables puis utilise une déclaration conditionnelle pour déterminer ce qu’il faut imprimer dans la console:

>>> sammy = 'Sammy'
>>> shark = 'Shark'
>>> if len(sammy) > len(shark):
...     print('Sammy codes in Java.')
... else:
...     print('Sammy codes in Python.')
... 
Sammy codes in Python.
>>> 

Dans ce cas, les longueurs des deux chaînes sont égales, donc l’instruction else est imprimée.
Notez que vous devrez respecter la convention d’indentation Python de quatre espaces, sinon vous recevrez une erreur:

>>> if len(sammy) > len(shark):
... print('Sammy codes in Java.')
  File "<stdin>", line 2
    print('Sammy codes in Java.')
        ^
IndentationError: expected an indented block
>>> 

Vous pouvez non seulement expérimenter avec du code sur plusieurs lignes dans la console Python, mais vous pouvez également importer des modules.

Importation de modules

L’interpréteur Python offre un moyen rapide de vérifier si des modules sont disponibles dans un environnement de programmation spécifique. Vous pouvez le faire en utilisant l’instruction import:

>>> import matplotlib
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'matplotlib'

Dans le cas ci-dessus, le module matplotlib n’était pas disponible dans l’environnement de programmation actuel.

Pour l’installer, nous devrons quitter l’interpréteur interactif et l’installer avec pip comme d’habitude :

  1. pip install matplotlib
Output
Collecting matplotlib Downloading matplotlib-3.4.3-cp38-cp38-manylinux1_x86_64.whl (10.3 MB) ... Installing collected packages: numpy, python-dateutil, kiwisolver, pillow, pyparsing, cycler, matplotlib Successfully installed cycler-0.10.0 kiwisolver-1.3.1 matplotlib-3.4.3 numpy-1.21.2 pillow-8.3.1 pyparsing-2.4.7 python-dateutil-2.8.2

Une fois que le module matplotlib ainsi que ses dépendances sont installés avec succès, vous pouvez revenir dans l’interpréteur interactif :

  1. python
  1. import matplotlib

À ce stade, vous ne recevrez aucun message d’erreur et pourrez utiliser le module installé soit dans l’interpréteur de commandes, soit dans un fichier.

Quitter la console interactive Python

Il existe deux façons principales de quitter la console interactive Python, soit avec un raccourci clavier, soit avec une fonction Python.

Le raccourci clavier CTRL + D dans les systèmes basés sur *nix ou CTRL + Z puis la touche CTRL dans les systèmes Windows interrompra votre console et vous ramènera à votre environnement terminal d’origine :

...
>>> age_at_death = death_year - birth_year
>>> print(age_at_death)
53
>>> 
sammy@ubuntu:~/environments$ 

Alternativement, la fonction Python quit() quittera la console interactive et vous ramènera également à l’environnement terminal d’origine dans lequel vous étiez précédemment :

>>> octopus = 'Ollie'
>>> quit()
sammy@PythonUbuntu:~/environments$ 

Lorsque vous utilisez la fonction quit(), elle apparaîtra dans votre fichier d’historique, mais le raccourci clavier CTRL + D ne sera pas enregistré :

File: /home/sammy/.python_history
...
age_at_death = death_year - birth_year
print(age_at_death)
octopus = 'Ollie'
quit()

Quitter l’interpréteur Python peut se faire de l’une ou l’autre manière, selon ce qui convient le mieux à votre flux de travail et à vos besoins d’historique.

Accéder à l’historique

Une des choses utiles concernant la console interactive Python est que toutes vos commandes sont enregistrées dans le fichier .python_history dans les systèmes basés sur *nix, que vous pouvez consulter dans un éditeur de texte comme nano, par exemple :

  1. nano ~/.python_history

Une fois ouvert avec un éditeur de texte, votre fichier d’historique Python ressemblera à ceci, avec votre propre historique de commandes Python :

File: /home/sammy/.python_history
import pygame
quit()
if 10 > 5:
    print("hello, world")
else:
    print("nope")
sammy = 'Sammy'
shark = 'Shark'
...

Une fois que vous avez terminé avec votre fichier, vous pouvez appuyer sur CTRL + X pour quitter nano.

En gardant une trace de tout votre historique Python, vous pouvez revenir aux commandes et expériences précédentes, et copier-coller ou modifier ce code pour une utilisation dans des fichiers de programmation Python ou dans un Jupyter Notebook.

Conclusion

La console interactive Python offre un espace pour expérimenter avec du code Python. Vous pouvez l’utiliser comme outil de test, pour élaborer la logique, et plus encore.

Pour utiliser le débogage des fichiers de programmation Python, vous pouvez utiliser le module Python code pour ouvrir un interpréteur interactif dans un fichier, dont vous pouvez lire à propos dans notre guide Comment déboguer Python avec une console interactive.

Source:
https://www.digitalocean.com/community/tutorials/how-to-work-with-the-python-interactive-console