read–eval–print loop
Megjelenés
Főnév
read–eval–print loop (tsz. read–eval–print loops)
- (informatika) A REPL egy interaktív parancssoros környezet, ahol a programozó közvetlenül írhat be utasításokat, és az interpreter azokat azonnal végrehajtja és megmutatja az eredményt.
A REPL a következő négy lépés folyamatos ismétléséből áll:
| Lépés | Jelentés | Mit csinál? |
|---|---|---|
| Read | Beolvasás | Beolvassa a felhasználó által beírt parancsot / kódot. |
| Eval | Értékelés | Értelmezi (parse) és kiértékeli (evaluate) a parancsot. |
| Kiírás | Kiírja az értékelés eredményét a képernyőre. | |
| Loop | Ciklus | Visszatér a prompt-hoz, és várja a következő parancsot. |
Hogyan néz ki ez Pythonban?
Amikor beírod a parancsot:
$ python3
Python 3.11.1 (default, Jan 2023, ...)
>>>
A >>> jel a REPL prompt, itt kezded el a munkát.
Példa interaktív munkamenetre
>>> 2 + 3
5
>>> print("Hello!")
Hello!
>>> len("Python")
6
Mi történik belül?
- Read → beolvassa, pl.:
2 + 3 - Eval → kiszámolja:
5 - Print → kiírja:
5 - Loop → újra a
>>>prompt következik
REPL előnyei
✅ Nagyon gyors visszacsatolás: rögtön látod a kód eredményét. ✅ Kísérletezéshez, teszteléshez ideális. ✅ Hibakeresés során nagyon hasznos. ✅ Oktatásban kiváló, mert a tanulók látják, mit csinál a kód.
REPL nemcsak Pythonban
A REPL nem Python-specifikus — sok nyelvben van:
| Nyelv | REPL parancs |
|---|---|
| Python | python, python3 |
| JavaScript | node |
| Ruby | irb |
| Scala | scala |
| Haskell | ghci |
REPL vs Script futtatás
| Tulajdonság | REPL | Script |
|---|---|---|
| Mód | Interaktív | Teljes program |
| Használat | Próbálgatás, tesztelés | Komoly program futtatás |
| Mentés | Általában nem mented a kódot | .py fájlban mented |
| Előny | Azonnali eredmény | Bonyolult programok |
| Hátrány | Nehéz nagy programokat REPL-ben írni | Lassabb tesztelés (mentés, újrafuttatás kell) |
REPL kibővítése
A sima Python REPL már nagyon jó, de léteznek fejlettebb REPL-ek is:
IPython
- Jobb prompt
- Szintaxiskiemelés
- Tabos kiegészítés
- Shell parancsok futtatása (
!ls,!pwdstb.) - Történet (history) mentése
Használata:
$ ipython
Jupyter Notebook
- Böngészőben fut
- Kód + szöveg + ábra + eredmény egy helyen
- Kiváló adatvizualizációhoz, gépi tanuláshoz
Összefoglalás
A REPL egy nagyon hatékony eszköz a Python programozás során:
- Interaktív környezet: a kódot azonnal ki lehet próbálni.
- Minden Python interpreter tartalmaz REPL-t (
>>>prompt). - Lépései: Read → Eval → Print → Loop.
- Oktatásban, hibakeresésben, gyors teszteléshez kiváló.
- Ha profi REPL-t akarsz, használj IPython-t vagy Jupyter Notebook-ot.
- read–eval–print loop - Szótár.net (en-hu)
- read–eval–print loop - Sztaki (en-hu)
- read–eval–print loop - Merriam–Webster
- read–eval–print loop - Cambridge
- read–eval–print loop - WordNet
- read–eval–print loop - Яндекс (en-ru)
- read–eval–print loop - Google (en-hu)
- read–eval–print loop - Wikidata
- read–eval–print loop - Wikipédia (angol)