9 Astuces avec le REPL de Python

9 Astuces avec le REPL de Python

Bien entendu, le Pi sur Raspberry Pi vient de Python, l'un des langages de programmation les plus populaires au monde et particulièrement apprécié des bricoleurs et des créateurs. Dans ce billet, je vais vous donner 9 trucs et astuces avec la REPL de Python - mais ne vous inquiétez pas si vous n'êtes pas très familier avec la REPL. Python ou le REPL.

Ce billet s'adresse aussi bien aux débutants qu'aux programmeurs Python de niveau intermédiaire.

Qu'est-ce que le REPL ?

La REPL (Read-Evaluate-Print Loop) est un moyen d'interagir directement avec l'interpréteur Python. On l'appelle REPL parce qu'elle lit, évalue et imprime l'entrée, puis revient au début de la boucle, ce qui vous permet d'entrer une autre commande.

Il fournit une interface à travers un shell Python pour entrer du code et recevoir immédiatement une sortie. Cela permet de vérifier le code, de déboguer en temps réel et de produire des tests interactifs. En règle générale, vous saurez que vous avez affaire à une REPL Python lorsque vous verrez ces trois flèches :

>>>

C'est ici que vous pouvez introduire vos données.

Il convient de mentionner que

Les termes "Python Shell" et "Python Interpreter" sont parfois utilisés de manière interchangeable, mais il existe une différence subtile entre eux. L'interprète Python désigne le programme ou le logiciel qui exécute le code Python. Le Python Shell, quant à lui, est l'interface qui vous permet d'interagir avec l'interpréteur en temps réel.

Outre les shells Python et Python3 standard, de nombreuses personnes utilisent également IPython et bpython, qui sont des programmes en ligne de commande offrant des fonctionnalités uniques, telles que la mise en évidence de la syntaxe.

Python REPL

Vous pouvez voir que IPython et bpython sont plus jolis par défaut (nous verrons plus loin comment rendre le REPL standard plus joli également).

Il convient également de noter que le REPL d'IPython numérote les lignes d'entrée "In [1]", "In [2]", etc.

Contrairement à IPython, bpython conserve la disposition >>>.

La REPL peut également offrir des fonctionnalités telles que l'historique des commandes, l'achèvement des tabulations et la possibilité d'accéder à des variables et des fonctions précédemment définies, ce qui en fait un outil pratique pour la programmation et l'exploration interactives de Python.

Cela fait du REPL un outil inestimable pour tous ceux qui cherchent à s'amuser avec leur Raspberry Pi.

Maintenant que vous savez ce qu'est le REPL, explorons quelques astuces pour l'utiliser :

Astuce 1 : Trouver de la documentation

Vous pouvez trouver la documentation de n'importe quel objet ou module Python directement à partir de la REPL en utilisant la commande help() fonction.

Par exemple, en tapant help(str) affichera la documentation de l'objet chaîne. Vous pouvez également ajouter un nom de méthode ou de fonction spécifique pour obtenir des informations détaillées, telles que

 help(str.upper)

Si vous saisissez cette information, vous obtiendrez le résultat suivant :

Python REPL find documentation

Astuce 2 : Utiliser la complétion par tabulation

Selon le programme que vous utilisez, le REPL Python prend en charge la complétion par tabulation, ce qui peut vous faire gagner du temps et éviter les fautes de frappe. En appuyant sur la touche Tab après avoir tapé un nom partiel ou un objet, les options disponibles s'affichent.

Par exemple, si vous tapez int. puis appuyez sur Tab, vous verrez apparaître une liste de méthodes permettant d'utiliser des nombres entiers.

Complétion des onglets du REPL Python

Astuce 3 : Créer des déclarations à plusieurs lignes

En outre, le REPL vous permettra d'écrire des instructions sur plusieurs lignes en utilisant la continuation de ligne.

Si vous souhaitez diviser une déclaration en plusieurs lignes pour des raisons de lisibilité, vous pouvez utiliser la barre oblique inverse (\) à la fin de chaque ligne pour la faire passer à la ligne suivante (voir l'exemple 1 ci-dessous).

Vous pouvez également mettre la déclaration entre parenthèses ou entre crochets pour la faire passer à la ligne suivante (voir l'exemple 2 ci-dessous).

# example 1: using backslash for a multi-line statement

name = 'Fatima'
age = 46
country = 'Germany'

message = 'Hi, ' + \
          name + \
          '! You are ' + \
          str(age) + \
          ' years old and from ' + \
          country + '.'

print(message)

# the message will be 'Hi, Fatima! You are 46 years old and from Germany.'

# example 2: using parentheses for a multi-line statement

total = (1 + 2 + 3 +
         4 + 5 + 6 +
         7 + 8 + 9)

print("The total is:", total)

# the message will be 'The total is: 45'

Astuce 4 : Accéder à un code déjà saisi

Vous pouvez accéder au code précédemment tapé dans la REPL en utilisant les touches fléchées vers le haut et vers le bas, comme vous le feriez dans le terminal.

En appuyant sur la touche fléchée vers le haut, vous parcourez l'historique des commandes, ce qui vous permet de rappeler et de modifier rapidement les commandes précédentes. Découvrez-le par vous-même !

Truc 5 : Utiliser la variable de soulignement

La variable de soulignement (_) contient le résultat de la dernière expression évaluée dans le REPL.

Cela peut s'avérer utile lorsque vous devez réutiliser le résultat dans des opérations ultérieures sans avoir à réévaluer l'ensemble de l'expression. Ainsi, si vous devez effectuer des calculs rapides ou si vous souhaitez récupérer des données très rapidement, il vous suffit de saisir le trait de soulignement comme variable standard du résultat précédent.

Variable Python REPL underscore

Astuce 6 : Exécuter des commandes système et des commandes magiques (IPython)

En IPython (abréviation de "Interactive Python"), vous pouvez exécuter des commandes système directement en faisant précéder une ligne de code d'un point d'exclamation (!).

Avec la fonction commandes magiques, like %cd to change directory, you’re able to use the Python REPL for seamless integration!

Par exemple, !ls sur les systèmes Unix ou !dir sous Windows affichera le contenu du répertoire actuel.

Commandes magiques de la REPL Python

Truc 7 : Expérimenter les importations

Dans la REPL Python, vous pouvez expérimenter les importations sans avoir à créer des fichiers Python distincts. Cette fonctionnalité vous permet d'importer des modules, d'essayer leurs fonctions et d'explorer leur contenu de manière interactive, ce qui est pratique pour expérimenter et explorer rapidement différents modules et leurs capacités.

Voici comment vous pouvez utiliser la REPL de Python pour expérimenter les importations :

>>> import math
>>> math.sqrt(16)
4.0

Dans cet exemple, nous utilisons le sqrt() de la fonction math pour calculer la racine carrée de 16.

En utilisant la REPL Python pour expérimenter les importations, vous pouvez rapidement tester et explorer les fonctionnalités de différents modules sans avoir à créer des fichiers Python distincts.

Ce processus interactif et itératif vous permet de mieux comprendre le fonctionnement des différents modules, d'essayer différentes fonctions et d'examiner leurs résultats en temps réel.

Astuce 8 : Personnaliser l'invite du REPL

Vous n'aimez pas que >>> soit l'invite principale et que ... soit l'invite secondaire ?

Vous avez de la chance, car vous pouvez personnaliser l'invite affichée par la REPL Python.

En modifiant le sys.ps1 et sys.ps2 vous pouvez modifier les invites principale et secondaire, respectivement.

Il suffit de courir :

import sys

sys.ps1 = 'primary'
sys.ps2 = 'secondary'

Maintenant, l'invite primaire sera "primaire" et l'invite secondaire sera "secondaire". N'hésitez pas à les modifier à votre guise ! Essayez avec des symboles ou des émojis, par exemple !

Cette méthode n'affecte que la session REPL en cours. Si vous voulez rendre les choses un peu plus permanentes, vous devrez trouver le fichier ".pyrc" et éditer les invites qui s'y trouvent.

Vous vous souvenez de mes prompteurs ennuyeux et laids dans mes REPLs ci-dessus ? Changeons de couleur.

Si vous utilisez Linux, vous pouvez introduire les données suivantes dans votre terminal :

tee ~/.pyrc <<E0F
import sys
sys.ps1='\x01\x1b[1;34;40m\x02>>>\x01\x1b[0m\x02'
sys.ps2='\x01\x1b[1;35;40m\x02...\x01\x1b[0m\x02'
E0F

Cela changera la couleur de l'invite principale en bleu sur fond gris et celle de l'invite secondaire en violet sur fond gris, si c'est ce que vous recherchez. N'hésitez pas à expérimenter avec toutes les Séquences de couleurs ANSI pour trouver une couleur de prompteur qui vous convienne.

Une fois que vous avez fait cela, assurez-vous d'exporter ceci :

export PYTHONSTARTUP=~/.pyrc

Les invites devraient maintenant ressembler à ceci :

Invite de personnalisation de la REPL Python

Encore une fois, il ne s'agit que d'une mesure temporaire. Si vous voulez changer les choses de façon permanente, vous devrez modifier le fichier de configuration. Mais cela vous donne un avant-goût du plaisir que l'on peut avoir !

Astuce 9 : Explorer les modules et les objets

Si vous cherchez à compléter la recherche de documentation et l'utilisation de la complétion de tabulation, voici l'astuce qui complète le tout !

Vous pouvez explorer le contenu d'un module (ou d'un objet) en utilisant la fonction dir() fonction.

En passant un module ou un objet en argument, il renvoie une liste de noms à l'intérieur de ce module ou de cet objet, ce qui vous permet d'explorer les attributs, les méthodes et les fonctions disponibles.

Par exemple :

import math
print (dir(math))

La liste des attributs, méthodes et fonctions disponibles dans le module mathématique s'affiche.

Python REPL explorer les modules et les objets

Des astuces de ce type peuvent contribuer à rendre votre flux de travail fluide.

Une fois que vous aurez maîtrisé ces 9 astuces, vous serez en mesure d'utiliser le REPL de manière plus efficace.

Cela facilitera grandement le débogage et le test de votre code.

Faites-nous part de vos astuces REPL dans les commentaires ci-dessous !

Laissez un commentaire