9 Tricks mit der Python REPL

9 Tricks mit der Python REPL

Natürlich ist die Pi in Raspberry Pi stammt aus Python, einer der beliebtesten Programmiersprachen der Welt und besonders beliebt bei Tüftlern und Machern. In diesem Beitrag möchte ich Ihnen 9 Tricks und Tipps mit der Python REPL geben - aber keine Sorge, wenn Sie nicht super vertraut sind mit Python oder die REPL.

Dieser Beitrag richtet sich sowohl an Anfänger als auch an fortgeschrittene Python-Programmierer.

Was ist die REPL?

Die REPL (Read-Evaluate-Print Loop) ist eine Möglichkeit, direkt mit dem Python-Interpreter zu interagieren. Sie wird REPL genannt, weil sie die Eingabe liest, auswertet und ausgibt und dann in einer Schleife zum Anfang zurückkehrt, so dass Sie einen weiteren Befehl eingeben können.

Es bietet eine Schnittstelle über eine Python-Shell, um Code einzugeben und sofort eine Ausgabe zu erhalten. Dadurch ist es möglich, Code zu überprüfen, in Echtzeit zu debuggen und interaktive Tests zu erstellen. Normalerweise wissen Sie, dass Sie es mit einer Python-REPL zu tun haben, wenn Sie diese drei Pfeile sehen:

>>>

Hier können Sie Ihre Eingaben machen.

Es ist erwähnenswert, dass

Die Begriffe "Python-Shell" und "Python-Interpreter" werden manchmal synonym verwendet, aber es gibt einen feinen Unterschied zwischen ihnen. Der Python-Interpreter bezieht sich auf das eigentliche Programm oder die Software, die den Python-Code ausführt. Die Python-Shell hingegen ist die Schnittstelle, über die Sie in Echtzeit mit dem Interpreter interagieren können.

Neben den Standard-Python- und Python3-Shells verwenden viele Benutzer auch IPython und bpython, Befehlszeilenprogramme, die einzigartige Funktionen wie Syntaxhervorhebung bieten.

Python REPL

Sie können sehen, dass IPython und bpython standardmäßig schöner sind (weiter unten werden wir sehen, wie man auch die Standard-REPL schöner machen kann).

Es ist auch erwähnenswert, dass die REPL von IPython die Eingabezeilen "In [1]", "In [2]" usw. nummeriert.

Im Gegensatz zu IPython behält bpython das >>> Layout bei.

Die REPL bietet auch Funktionen wie Befehlshistorie, Tabulatorvervollständigung und die Möglichkeit, auf zuvor definierte Variablen und Funktionen zuzugreifen, was sie zu einem praktischen Werkzeug für die interaktive Programmierung und Erkundung von Python macht.

Das macht die REPL zu einem unschätzbaren Werkzeug für alle, die mit ihrem Raspberry Pi herumspielen wollen.

Jetzt, wo Sie wissen, was die REPL ist, wollen wir uns einige Tricks für ihre Verwendung ansehen:

Trick 1: Dokumentation finden

Sie können die Dokumentation für jedes Python-Objekt oder -Modul direkt von der REPL aus finden, indem Sie die help() Funktion.

Wenn Sie zum Beispiel Folgendes eingeben help(str) wird die Dokumentation für das String-Objekt angezeigt. Sie können auch einen bestimmten Methoden- oder Funktionsnamen anhängen, um detaillierte Informationen zu erhalten, z. B.

 help(str.upper)

Wenn Sie dies eingeben, sehen Sie Folgendes:

Python REPL Dokumentation finden

Trick 2: Verwendung der Tabulatorvervollständigung

Je nachdem, welches Programm Sie verwenden, unterstützt die Python REPL die Tabulatorvervollständigung, die Ihnen Zeit sparen und Tippfehler vermeiden kann. Wenn Sie nach der Eingabe eines Teilnamens oder Objekts die Tabulatortaste drücken, werden die verfügbaren Optionen angezeigt.

Wenn Sie zum Beispiel Folgendes eingeben int. und drücken Sie dann die Tabulatortaste. Es wird eine Liste von Methoden angezeigt, die mit ganzen Zahlen arbeiten.

Python REPL Registerkartenvervollständigung

Trick 3: Mehrzeilige Anweisungen erstellen

Außerdem können Sie in der REPL mehrzeilige Anweisungen mit Hilfe der Zeilenfortsetzung schreiben.

Wenn Sie eine Anweisung zur besseren Lesbarkeit in mehrere Zeilen aufteilen möchten, können Sie das Backslash-Zeichen (\) am Ende jeder Zeile, um sie in der nächsten Zeile fortzusetzen (siehe Beispiel 1 unten).

Sie können die Anweisung auch in Klammern setzen, um sie in der nächsten Zeile fortzusetzen (siehe Beispiel 2 unten).

# 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'

Trick 4: Zugriff auf zuvor getippten Code

Sie können in der REPL mit den Pfeiltasten nach oben und unten auf bereits eingegebenen Code zugreifen, genau wie im Terminal.

Wenn Sie die Pfeiltaste nach oben drücken, können Sie Ihre Befehlshistorie durchlaufen und so frühere Befehle schnell abrufen und ändern. Probieren Sie es selbst aus!

Trick 5: Verwenden Sie die Unterstrich-Variable

Die Unterstrich-Variable (_) enthält das Ergebnis des letzten im REPL ausgewerteten Ausdrucks.

Er kann sich als nützlich erweisen, wenn Sie das Ergebnis in nachfolgenden Operationen wiederverwenden wollen, ohne den gesamten Ausdruck neu auswerten zu müssen. Wenn Sie also einige schnelle Berechnungen durchführen oder Daten superschnell abrufen wollen, können Sie den Unterstrich einfach als Standardvariable des vorherigen Ergebnisses eintippen.

Python REPL Unterstrich-Variable

Trick 6: Ausführen von Systembefehlen und magischen Befehlen (IPython)

In IPython (kurz für "Interactive Python") können Sie Systembefehle direkt ausführen, indem Sie einer Codezeile ein Ausrufezeichen voranstellen (!).

Zusammen mit IPython's magische Befehle, like %cd to change directory, you’re able to use the Python REPL for seamless integration!

Zum Beispiel, !ls auf Unix-basierten Systemen oder !dir unter Windows wird der Inhalt des aktuellen Verzeichnisses aufgelistet.

Python REPL magische Befehle

Trick 7: Mit Importen experimentieren

In der Python REPL können Sie mit Importen experimentieren, ohne dass Sie separate Python-Dateien erstellen müssen. Diese Funktion ermöglicht es Ihnen, Module zu importieren, ihre Funktionen auszuprobieren und ihren Inhalt interaktiv zu erforschen, was das schnelle Experimentieren und Erforschen verschiedener Module und ihrer Fähigkeiten erleichtert.

Hier erfahren Sie, wie Sie die Python REPL verwenden können, um mit Importen zu experimentieren:

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

In diesem Beispiel verwenden wir die sqrt() Funktion aus der math Modul zur Berechnung der Quadratwurzel aus 16.

Wenn Sie die Python REPL zum Experimentieren mit Importen verwenden, können Sie die Funktionalität verschiedener Module schnell testen und erforschen, ohne dass Sie separate Python-Dateien erstellen müssen.

Dieser interaktive und iterative Prozess ermöglicht es Ihnen, die Funktionsweise verschiedener Module besser zu verstehen, verschiedene Funktionen auszuprobieren und deren Ergebnisse in Echtzeit zu überprüfen.

Trick 8: Anpassen der REPL-Eingabeaufforderung

Sie mögen >>> als primäre Eingabeaufforderung und ... als sekundäre Eingabeaufforderung nicht?

Sie haben Glück, denn Sie können die von der Python REPL angezeigte Eingabeaufforderung anpassen.

Durch die Änderung der sys.ps1 und sys.ps2 können Sie die primären und sekundären Prompts ändern.

Laufen Sie einfach:

import sys

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

Die primäre Eingabeaufforderung lautet nun "primär" und die sekundäre "sekundär". Ändern Sie es nach Belieben! Probieren Sie es zum Beispiel mit Symbolen oder Emojis aus!

Auf diese Weise wird nur die aktuelle REPL-Sitzung beeinflusst. Wenn Sie die Dinge ein wenig dauerhafter machen wollen, müssen Sie die ".pyrc"-Datei finden und die Eingabeaufforderungen dort bearbeiten.

Erinnern Sie sich an meine langweiligen, hässlichen Prompter in meinen REPLs oben? Lassen Sie uns die Farbe ändern.

Wenn Sie Linux verwenden, können Sie folgendes in Ihr Terminal eingeben:

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

Dadurch ändert sich die Farbe der primären Eingabeaufforderung in ein Blau auf Grau und die der sekundären Eingabeaufforderung in ein Lila auf Grau, falls Sie das wünschen. Experimentieren Sie ruhig mit allen ANSI-Farbsequenzen um eine Souffleurfarbe zu finden, mit der Sie zufrieden sind.

Wenn Sie das getan haben, exportieren Sie es:

export PYTHONSTARTUP=~/.pyrc

Die Eingabeaufforderungen sollten nun wie folgt aussehen:

Python REPL-Eingabeaufforderung anpassen

Auch hier gilt, dass dies nur vorübergehend ist. Wenn Sie die Dinge dauerhaft ändern wollen, müssen Sie die Konfigurationsdatei ändern. Aber es gibt Ihnen einen Vorgeschmack auf den Spaß, den Sie haben werden!

Trick 9: Module und Objekte erforschen

Wenn Sie die Dokumentensuche und die Tabulatorvervollständigung ergänzen möchten, dann ist dies der Trick, der das Paket vervollständigt!

Sie können den Inhalt eines Moduls (oder eines Objekts) erkunden, indem Sie die dir() Funktion.

Durch die Übergabe eines Moduls oder Objekts als Argument wird eine Liste von Namen innerhalb dieses Moduls oder Objekts zurückgegeben, so dass Sie die verfügbaren Attribute, Methoden und Funktionen untersuchen können.

Zum Beispiel:

import math
print (dir(math))

Dadurch wird eine Liste der verfügbaren Attribute, Methoden und Funktionen innerhalb des Mathematikmoduls angezeigt.

Python REPL erforscht Module und Objekte

Mit Tricks wie diesen können Sie Ihren Arbeitsablauf reibungslos gestalten.

Wenn Sie diese 9 Tricks beherrschen, können Sie die REPL noch effektiver nutzen.

Dadurch wird das Debuggen und Testen Ihres Codes wesentlich einfacher.

Lassen Sie uns in den Kommentaren wissen, welche REPL-Tricks Sie kennen!

Hinterlassen Sie einen Kommentar