Sitelet https://www.datacamp.com/nl/tutorial/python-repl
Ga naar hoofdinhoud

Python REPL: een praktische gids voor interactief coderen

Leer hoe de REPL van Python je in staat stelt om code interactief uit te voeren voor testen, debuggen en leren. Ontdek essentiële commando's, aanpassingsopties en geavanceerde alternatieven.
Bijgewerkt 2 okt 2026  · 10 min lezen

Verken met AI

ChatGPTClaudePerplexity

In tegenstelling tot gecompileerde talen zoals C++ of Java, die vóór uitvoering naar machinecode moeten worden vertaald, wordt Python geïnterpreteerd en voert het instructies direct uit. Hierdoor is de REPL-omgeving bij uitstek geschikt om mee te experimenteren, of je nu snippets test, nieuwe concepten verkent of regel voor regel debugt. Het voordeel is dat hij standaard bij elke Python-installatie zit, dus hij is klaar wanneer jij dat bent.

In deze tutorial laat ik je met voorbeelden zien hoe je de Python REPL-omgeving gebruikt, verkennen we de functies en alternatieve REPLs om je workflow te verbeteren. Als je net begint met Python, raad ik je onze cursus Introduction to Python aan, waarin vaardigheden aan bod komen zoals datatypen, lijsten, basisfuncties en pakketten.

Wat is een Python REPL?

De REPL-sessie staat voor Read-Eval-Print Loop en beschrijft de vier fundamentele stappen:

  • Read: De REPL-omgeving leest de invoer van de gebruiker, die uit één regel code of een meerregelige instructie kan bestaan.
  • Evaluate: De code wordt geëvalueerd, de instructie of expressie wordt uitgevoerd en het resultaat wordt berekend.
  • Print: Deze stap print het resultaat van de evaluatie naar de console. Als de code geen uitvoer produceert, zoals bij een toewijzingsinstructie, wordt er niets geprint.
  • Loop: De REPL springt terug naar het begin en is klaar voor de volgende invoerregel.

Deze stappen werken continu samen en creëren een interactieve omgeving waarin je code kunt typen en direct de uitvoer ziet. De REPL van Python toont een primair prompt >>> voor nieuwe statements en een secundair prompt ... voor vervolgregels, zoals binnen lussen of functiedefinities. Met voorbeelden in de secties hieronder bekijken we hoe deze prompts werken.

De termen "interactieve shell", "interpreter-sessie" en "REPL" worden vaak door elkaar gebruikt om deze omgeving te beschrijven.

Waarom een Python REPL gebruiken

Je kunt een Python REPL gebruiken voor de volgende taken:

Snel codefragmenten en library-functies testen: Je kunt direct kleine stukjes code proberen zonder een scriptbestand te maken.

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

Syntax verkennen en met ideeën experimenteren: Zie de REPL-omgeving als je eigen sandbox. Je kunt nieuwe dingen uitproberen, zoals verschillende datatypen, operatoren en controlflow-structuren, om precies te zien hoe ze zich gedragen zonder risico een groter programma te verstoren.

>>> [x**2 for x in range(5)]
[0, 1, 4, 9, 16]

Debuggen en variabelen inspecteren: Je kunt de REPL-sessie gebruiken om stap voor stap de waarden en toestanden van je variabelen te controleren, wat het veel eenvoudiger maakt om problemen te begrijpen en op te lossen.

>>> x = 42
>>> type(x)
<class 'int'>
>>> x / 7
6.0

Gebruiken als rekenmachine of leermiddel: De directe resultaten maken het handig voor berekeningen of om de basis van Python te leren.

>>> 10 * (5 + 2)
70

Een REPL-sessie starten en afsluiten

Om een Python REPL-sessie te starten, open je je terminal of opdrachtprompt. Typ vervolgens python of python3 en druk op Enter. Hiermee start je de interactieve shell.

Je kunt ook een interactieve sessie starten na het uitvoeren van een script met de -i-vlag. Bijvoorbeeld, python -i calc_tax.py voert calc_tax.py uit en zet je daarna in de REPL-omgeving met de variabelen van het script nog in het geheugen geladen.

Om de REPL af te sluiten, kun je een van de volgende commando's gebruiken:

  • Typ quit() of exit() en druk vervolgens op Enter.

  • Op Unix/Linux/macOS druk je op Ctrl+D.

  • Op Windows druk je op Ctrl+Z en vervolgens op Enter.

Code uitvoeren in de REPL-omgeving

Je kunt code in Python’s REPL-sessies op verschillende manieren uitvoeren, afhankelijk van de complexiteit. Laten we kijken naar het volgende type code dat je in REPL kunt draaien.

Eenvoudige statements en expressies

De REPL-omgeving kan eenvoudige expressies en statements direct evalueren. Je kunt bijvoorbeeld rekenkundige bewerkingen uitvoeren, variabelen toewijzen en Booleaanse expressies evalueren. Het resultaat van een expressie wordt automatisch geprint. 

>>> 5 + 4
9
>>> name = "Allan"
>>> name
'Allan'
>>> 10 > 5
True

Als een statement, zoals een variabele-toewijzing, geen output produceert, print de REPL-interpreter niets. Als je een fout maakt, geeft de REPL direct feedback door een foutmelding te genereren.

Samengestelde statements

De Python REPL-omgeving kan ook meerregelige samengestelde statements aan zoals if-statements en for-lussen. Hij schakelt automatisch over naar de secundaire prompt (...) nadat je een regel typt die eindigt met een dubbele punt (:) en op Enter drukt, wat aangeeft dat hij wacht op het ingesprongen codeblok.

Let op dat je je code handmatig moet inspringen; de REPL-omgeving springt niet automatisch in. Om het einde van het samengestelde statement aan te geven, druk je op Enter op een lege regel.

Expliciete en impliciete regeleinden

Je kunt in de Python REPL-sessie ook meerregelige statements schrijven met regeleinden. Een expliciet regeleinde gebruikt een backslash \ aan het einde van een regel om aan te geven dat het statement doorgaat op de volgende regel. 

Impliciete regeleinden treden automatisch op wanneer de code is ingesloten tussen haakjes (), vierkante haken [] of accolades {}.

Printen vs evalueren

De auto-printfunctie van de REPL werkt alleen bij expressies met een returnwaarde. Als je bijvoorbeeld een item aan een lijst toevoegt met temp.append(45), levert dat geen uitvoer op. Om de nieuwe lijst te zien, moet je de lijstvariabele expliciet op de volgende regel evalueren. Voor functies die None retourneren, moet je print() gebruiken om hun output te zien.

Handige REPL-functies

De Python REPL-omgeving heeft verschillende ingebouwde functies die het gebruik en leren productiever maken. Ik bespreek enkele functies die ik nuttig vind.

Speciale variabele _

De underscore (_) is een speciale variabele in de REPL-sessie die het resultaat van de laatst geëvalueerde expressie opslaat. Dit is handig als je resultaten opnieuw wilt gebruiken zonder ze opnieuw te typen.

In het onderstaande voorbeeld slaat _ de waarde 30 op, het resultaat van de expressie 6*5.

Introspectietools

Python biedt verschillende ingebouwde functies om interactief objecten en je omgeving te exploreren. De onderstaande tabel vat het gebruik van elke functie samen met voorbeelden.

Tool

Doel

Voorbeeld

dir()

Geeft een lijst terug met alle namen (attributen en methoden) in de huidige lokale scope of van een opgegeven object.

>>> dir() of >>> dir(list)

help()

Start het ingebouwde helpsysteem voor een object, module of functie en toont de documentatie (docstrings).

>>> help(print) of >>> help(math)

vars()

Geeft het __dict__-attribuut (de namespace) van een object terug als een dictionary. Handig om objecten te inspecteren.

>>> vars(my_object)

locals()

Geeft een dictionary terug die de huidige lokale symbooltabel voorstelt (variabelen in de huidige scope).

>>> locals()

globals()

Geeft een dictionary terug die de huidige globale symbooltabel voorstelt (variabelen overal toegankelijk).

>>> globals()

Codegeschiedenis en tab-completion

De REPL versnelt het coderen met de volgende geschiedenis- en autocompletion-functies:

  • Codegeschiedenis: Je kunt door eerder ingevoerde commando's navigeren met de pijltjestoetsen omhoog en omlaag. Zo kun je snel eerdere regels opnieuw uitvoeren, aanpassen of corrigeren.
  • Tab-completion: Dit helpt bij het aanvullen van variabelenamen, modulenaam en objectattributen. Als je bijvoorbeeld impor typt en dan op Tab drukt, wordt dit automatisch aangevuld tot import, of als je str.. typt en op Tab drukt, krijg je een lijst met stringmethoden.

Sneltoetsen

Hieronder vind je enkele veelvoorkomende sneltoetsen die het navigeren in de REPL efficiënter maken.

Sneltoets

Actie

Ctrl+C

Onderbreekt de huidige uitvoering, zoals een lange lus, en werpt een KeyboardInterrupt.

Ctrl+D (Unix)

REPL afsluiten (zelfde als quit() of exit())

Ctrl+Z + Enter (Win)

REPL afsluiten

Ctrl+L

Leegt het scherm (zoals het commando clear) en houdt de huidige prompt bovenaan.

Pijl omhoog / omlaag

Bladeren door commandogeschiedenis

Ctrl+A

Verplaats de cursor naar het begin van de regel

Ctrl+E

Verplaats de cursor naar het einde van de regel

Ctrl+K

Verwijder vanaf de cursor tot het einde van de regel

Ctrl+U

Verwijder vanaf de cursor tot het begin van de regel

De REPL aanpassen

De standaard Python REPL kun je aanpassen aan je workflow en voorkeuren.

Opstartbestand

Stel de omgevingsvariabele PYTHONSTARTUP in op het pad naar een Python-script dat automatisch wordt uitgevoerd wanneer de REPL start. Dit script kan veelgebruikte modules vooraf importeren, functies definiëren of promptstrings wijzigen.

Maak bijvoorbeeld een bestand ~/.pystartup met de volgende inhoud:

import sys, os, math, random
print("Custom REPL ready. Pre-imported: sys, os, math, random")

# Change the prompt strings
import sys
sys.ps1 = ">>> "
sys.ps2 = "... "

Als je Windows gebruikt, kun je de omgeving instellen met het volgende commando:

setx PYTHONSTARTUP "C:\path\to\pystartup.py"

Rijke output met rich

Je kunt de rich-bibliotheek gebruiken om de output in de REPL te verfraaien en te kleuren. Je moet eerst de rich-module installeren via pip.

pip install rich

Schakel rich vervolgens in met import en gebruik het in je Python REPL-sessies. In het onderstaande voorbeeld heb ik de bibliotheek gebruikt om woorden in verschillende letterkleuren te printen.

Rijke output met de rich-bibliotheek in Python REPL.

Voorbeelden van REPL-commando's om te proberen

Zoals je ziet is de REPL-sessie van Python eenvoudig te gebruiken. Probeer de volgende commando's om je vaardigheden te oefenen

Commando

Doel

Uitvoer/Beschrijving

dir(str)

Introspectie: bekijk alle methoden en attributen die beschikbaar zijn op het ingebouwde type str (string).

['__add__', ..., 'capitalize', 'center', 'count', 'find', ...]

help(list.append)

Documentatie: toon de docstring voor de append-methode van het list-object, met uitleg over hoe het werkt.

Een gedetailleerde beschrijving van wat list.append doet en welke parameters het heeft.

import math

Module importeren: laad de standaardbibliotheek math.

Geen uitvoer (maar de module is nu beschikbaar).

math.pi

Berekening: haal de waarde van π op.

3.141592653589793

math.sin(math.pi/2)

Berekening: bereken sin(π/2).

1.0

import random random.choice(['A', 'B', 'C'])

Snelle test: kies een willekeurig item uit een lijst.

'A' (of 'B' of 'C')

while True: pass Ctrl+C

Foutafhandeling/afsluiten: start een oneindige lus en druk vervolgens op Ctrl+C om te onderbreken en af te sluiten.

^C Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyboardInterrupt

Beperkingen van de standaard REPL-omgeving

Hoewel de standaard REPL-omgeving van Python geweldig is voor snelle taken, voelt hij vaak beperkt vergeleken met een moderne IDE. Je zult al snel een paar ontbrekende functies merken, waaronder het volgende:

  • Geen syntax highlighting: Al je code verschijnt als platte tekst. Hierdoor is het lastig om visueel snel onderscheid te maken tussen keywords, strings en commentaar, waardoor je nauwkeuriger moet lezen.
  • Minimale auto-inspringing: Hoewel het de vervolgprompt (...) afhandelt, moet je de juiste inspringing voor samengestelde statements, zoals if- en for-blokken, handmatig invoeren.
  • Basale codecompletion: De ingebouwde tab-completion werkt, maar biedt niet de contextbewuste suggesties, inline documentatie of fuzzy matching die je in geavanceerde shells vindt.
  • Slechte meerregelige bewerking: Het bewerken van complexe, meerregelige codeblokken is omslachtig.
  • Zodra een blok is ingediend, kan het niet eenvoudig worden bewerkt of uit de geschiedenis worden teruggehaald.

Alternatieve REPLs

Om de bovenstaande beperkingen van de standaardinterpreter te omzeilen, bieden verschillende verbeterde REPLs en omgevingen, gebouwd op het interactieve model van Python, extra functies die de productiviteit en het leren verbeteren. Ik raad aan om een van de volgende uit te proberen en te kijken welke bij je past.

  • IDLE: Een eenvoudige, GUI-gebaseerde Python-omgeving die met Python zelf wordt meegeleverd. Biedt syntax highlighting, een geïntegreerde editor en een debugger, en is gebruiksvriendelijk voor beginners.
  • IPython: Een krachtige REPL met uitgebreide tab-completion, syntax highlighting, magic commands (speciale commando's die met % beginnen), uitgebreide geschiedenis en eenvoudige toegang tot shell-commando's. Veelgebruikt in data science en wetenschappelijk rekenen.
  • bpython: Dit is een terminalgebaseerde REPL met inline syntax highlighting, autosuggesties en snelle toegang tot documentatie. Lichtgewicht, maar met beduidend meer gebruiksgemak dan de standaard REPL.
  • ptpython: Ontworpen voor ervaren gebruikers; een geavanceerde REPL met echte meerregelige bewerking, robuuste syntax highlighting en zelfs muisondersteuning, voor meer controle in de terminal.
  • Online REPLs: Browsergebaseerde omgegevingen zoals de interactieve shell van Python.org en Python Morsels REPL zijn ideaal voor snel testen, code delen of oefenen onderweg.

Conclusie

De Python REPL-sessie biedt een snelle, interactieve omgeving om met code te experimenteren en is van onschatbare waarde voor testen, leren en het verkennen van ideeën. Door de ingebouwde functies onder de knie te krijgen, heb je een krachtig hulpmiddel voor dagelijkse programmeertaken. Voor complexere workflows of meer gebruiksgemak kunnen geavanceerde REPL-alternatieven de interactieve codeerervaring verder verbeteren.

Voor een grondig begrip van Python kun je meer leren via onze skill tracks Python Data Fundamentals en Python Programming Fundamentals. De Python Cheat Sheet for Beginners is ook handig als je in één oogopslag wilt zien hoe je een lijst splitst in Python.


Allan Ouko's photo
Author
Allan Ouko
LinkedIn
\n
\n
\n
\n
Technical writer voor data science met praktische ervaring in data-analyse, business intelligence en data science. Ik schrijf praktische, op de industrie gerichte content over SQL, Python, Power BI, Databricks en data engineering, gebaseerd op analytisch werk in de echte wereld. Mijn schrijfwerk slaat een brug tussen technische diepgang en zakelijke impact, en helpt professionals om data om te zetten in onderbouwde beslissingen.
\n
\n
\n
\n

FAQs

Hoe start ik de Python REPL?

Open je terminal en typ python of python3, afhankelijk van je systeem.

Hoe sluit ik de REPL af?

Typ quit() of exit(), of gebruik Ctrl+D op Unix of Ctrl+Z + Enter op Windows.

Wat is het verschil tussen de REPL en een script uitvoeren?

De REPL voert code interactief regel voor regel uit, terwijl een script alle code in een bestand in één keer uitvoert.

Wat is de variabele _ in de REPL?

_ bevat het resultaat van de laatst geëvalueerde expressie, zodat je het snel kunt hergebruiken.

Wat betekenen de prompts >>> en ...?

>>> is de primaire prompt en ... is de secundaire prompt voor meerregelige invoer.

Onderwerpen
Python

Leer Python met DataCamp

Cursus

Python voor gemiddeld niveau

4 uur
1.4M
Maak je data science skills sterker: creëer visualisaties met Matplotlib en bewerk DataFrames met pandas.
Bekijk detailsRight Arrow
Start Cursus
Meer bekijkenRight Arrow
Gerelateerd

blog

AI vanaf nul leren in 2026: een complete gids van de experts

Ontdek alles wat je moet weten om in 2026 AI te leren, van tips om te beginnen tot handige resources en inzichten van industrie-experts.
Adel Nehme's photo

Adel Nehme

15 min

Meer BekijkenMeer Bekijken