Nemes Mihály • nemes.budapest@gmail.com

— Utolsó módosítás: 2026.02.15 —

Python futtatása (rövid verzió)

Online interpreterek

Kisebb programok különböző Python verziókon való kipróbálásához és verziók közötti különbségek vizsgálatához hasznosak az online futtató környezetek, illetve olyankor is, amikor éppen a gépünkön nincs Python vagy még a konfigurálással szenvedünk és mégis tanulni, gyakorolni akarunk. Olyankor is hasznosak, amikor több Python verzióban ki akarunk próbálni valamit. Néhány online interpreter listája itt található.

Python programok közvetlen futtatása

A közvetlen szó itt azt jelenti, hogy nem valamilyen integrált fejlesztő környezetben (IDE-ben, mint pl. a VS Code) végezzük a Python programunk futtatását, hanem parancssorból, vagy pl. Notepad++-ban. Az előadáson a Notepad++-ban és a run_python.bat parancsfájl segítségével fogunk futtatni — egyébként persze mindenki olyan fejlesztő környezetet használ, amilyent akar.

python.exe helyének specifikálása

Ha a python.exe könyvtárát hozzáadjuk a PATH környezeti változóhoz, akkor a parancssorba elegendő annyit írnunk, hogy python.exe. Ha ezt nem tesszük meg, például azért, mert több verzió is van a gépünkön és pontosan specifikálni akarjuk, melyik fusson, akkor ki kell írnunk a teljes elérési útvonalat és ha az útvonalban szóközök is előfordulhatnak, akkor idézőjelek közé kell tennünk:

c:\Users\A123456789\AppData\Local\Programs\Python\Python36-32\python.exe
"c:\Users\A123456789\AppData\Local\Program Files\Python\Python36-32\python.exe"
                                          
Én szeretem így csinálni: specifikálom a teljes elérési útvonalat, mert a gépemen több Python verzió is van és néha ugyanazt a programot le akarom futtatni pl. a 3.10 és a 3.11 verzióval is, hogy megnézzem a működésbeli vagy a sebességbeli különbségeket.

Persze nem triviális, hogyan találom meg a python.exe helyét – erről mindjárt részletesen szó lesz.

Egyébként itt a leírásban az egyszerűség kedvéért nem írom ki az elérési útvonalat, általában csak python vagy python.exe fog szerepelni.

python.exe helyének megkeresése

Itt a Windowson használható módszereket írom le, a Linux/macOS módszereket ld. lentebb.

Total Commander

A fájlrendszer gyökerébe állunk – vagy ha tudjuk/sejtjük, hogy melyik mappa alatt lehet, pl. C:\Users\A123456789\AppData\Local, akkor oda.

Keresés: Commands → Search vagy Alt+F7
Search for: *python.exe
Amikor elkészült a lista, célszerű azt egy szövegfájlba átmásolni, úgy jobban kezelhető lesz:
Feed to listbox
Mark → Select All
Mark → Copy Names With Path To Clipboard
és bemásoljuk egy szöveges fájlba, vagy:
Feed to listbox
Mark → Select All
Mark → Save Selection To File

Windows parancssorból

A parancssori terminált elindítjuk: cmd, ezután, mondjuk ha egy exe_list.txt nevű fájlban akarjuk meglapni a listát:

where /R c:\ python.exe > exe_list.txt
Kiinduló könyvtárnak c:\ helyett persze megadhatunk más könyvtárat is.

Everything (voidtools, nagyon gyors)

A keresőbe beírjuk, hogy python.exe. Ha fájlba akarjuk menteni:

  1. Edit ⇒ Select All
  2. File ⇒ Export
  3. Save as Type ⇒ Text File (*.txt)
  4. Kiválasztunk egy fájlt
  5. Save

File Intéző (Windows Intéző, File Explorer, Windows Explorer)

• Itt is a fájlrendszer gyökerébe állunk – Local Disk (C:) – vagy ha tudjuk/sejtjük, hogy melyik mappa alatt lehet, pl. C:\Users\A123456789\AppData\Local, akkor oda.
• Jobboldalt felül a keresőablakba beírjuk, hogy python.exe.
• Amikor elkészült a lista, célszerű azt egy szövegfájlba átmásolni, úgy jobban kezelhető lesz:

  1. Ráállunk egy listaelemre és Ctrl-A-t nyomunk, ezáltal kiválasztjuk a teljes listát.
  2. Shift-jobbklikk segítségével felhozunk egy felugró menüt, ebből kiválasztjuk, hogy "Másolás elérési útként" (Copy as Path).
  3. Megnyitunk egy szöveges fájlt és Ctrl-V-vel belemásoljuk a listát.

Szkript (program) futtatása

Amikor az utasításokat egy .py kiterjesztésű fájlba írjuk abból a célból, hogy ezt majd végrehajtassuk a Python interpreterrel, akkor a fájlt szkriptnek szoktuk nevezni – van, aki szerint a megnevezés nem szerencsés, inkább a program lenne precízebb név. Tegyük fel, hogy egy test.py nevű fájlba ezt írtuk:

i = 10
print('i:', i)
i = 20
Ekkor ezt így tudjuk végrehajtatni:
python.exe test.py

Szkript futtatása interaktívan

Nem túl gyakran, de előfordul, hogy a szkript lefutása után még további parancsokat akarunk begépelni; azt szeretnénk szimulálni, mintha a fájl tartalmát közvetlenül írtuk volna be. Ilyenkor a -i kapcsolóval kell felhívnunk a Python interpretert:

python -i test.py
A képernyőn a Python interaktív promptját (>>>) fogjuk látni és pl. kiírathatjuk az i változó tartalmát akár print() függvény nélkül is:
i: 10   # ezt írta ki a szkript
>>> i   # ezt gépeljük be a szkript lefutása után
20
>>>
Az interaktív mód hibakeresésnél lehet hasznos; globális változók tartalmát ki tudjuk íratni a szkript lefutása után akkor is, ha hibajelzéssel állt le a program.

Futtatás run_python.bat segítségével

A run_python.bat tartalmazza a python.exe teljes elérési útvonalának megadását és a futtató parancsot. A SET py= kezdetű sorban le kell cserélni a python.exe elérési útvonalát az érvényes értékre.

Futtatás Notepad++-ban

A Run menü Run almenüjét választjuk ki — F5 — a felugró ablakba ezt írjuk:

python.exe -i "$(FULL_CURRENT_PATH)"
persze python.exe teljes elérési útvonalával, majd elmentjük ezt a parancsot pl. pyrun néven. Mentéskor billentyűkombinációt is hozzá tudunk rendelni – vigyázzunk, hogy ez ne ütközzön már meglévővel. Pl. Ctrl-P szokott lenni a nyomtatás kombinációja, tehát ez már foglalt. A -i kapcsoló itt fontos, hogy ne záródjon be a parancs-ablak a szkript lefutása után.

Ezután a Run menüből kiválasztjuk a pyrun tételt, ekkor lefut interaktív módban a szövegszerkesztőben éppen megnyitott fájl.

Az adott fájlban található függvények listájának mutatása:

View → Function list

A sorszámok mutatásának ki-bekapcsolása régebbi Notepad++ verziókon:

Settings → Preferences → Editing →  Display line number
Újabbakon:
Settings → Preferences → Margins/Border/Edge → Line Number →  Display
A Notepad++ tervezői szeretik változtatni a beállítások elérését, egyetlen dologhoz szoktak ragaszkodni: hogy véletlenül se lehessen átlagos emberi logikával követni. 😬

Tabulátorok kezelése

Mivel a Pythonban a blokkokat indentálással kötelező ellátni, pl.:

if x == y:
    print('Hello')
    print('world')
a tabulátorok szóközzé alakításának nagy jelentősége van. Ugyanis az interpreter számára a tabulátor is csak egyetlen karakter, akárcsak a szóköz – ha tehát a fenti példában az első print() előtt egy darab tabulátor áll, a második előtt pedig négy darab szóköz, akkor hibajelzést fogunk kapni.

Notepad++-ban

A Notepad++-ban régebbi verzióknál így tudjuk beállítani, hogy a tabulátorok szóközzé legyenek alakítva:

Settings → Preferences → Language
Itt a Tab settings részben van egy Replace by space kapcsoló. Fölötte pedig azt lehet beállítani, hogy hány szóköznek feleljen meg egy tabulátor (ajánlott: 4).

Újabb Notepad++ verzióknál a

Settings → Preferences → Indentation
alatt lehet ezt a beállítást megcsinálni.

A már meglévő tabulátorok lecserélése szóközökre:

Edit → Blank operations → TAB to space
Fehér karakterek mutatása:
View → Show symbol → Show white space and TAB
vagy:
View → Show symbol → Show All Characters

Nem ASCII karakterek kezelése

Célszerű a szkriptjeinket a szövegszerkesztőben UTF-8 kódolással elmenteni, ekkor nem okoznak gondot az ékezetes karakterek változónevekben, sztringekben és megjegyzésekben:

bíztat = 'hajrá!' # megjegyzés
Ha pl. ISO 8852-ben van a szkript elmentve, akkor az elején egy megjegyzésben specifikálnunk kell ezt:
# coding: iso-8859-2
különben az első nem-ASCII (ékezetes) karakternél hibajelzést kapunk. A forrásfájl kódólásának specifikációját a fájl első vagy második sorába kell tennünk – a harmadik sorban már hatástalan.

Notepad++-ban

A Notepad++-ban az Encoding menüpont alatt lehet beállítani, hogy milyen kódolással mentse el a tartalmat. Azt, hogy éppen milyen kódolás van beállítva, a keret alsó sorában jobboldalt láthatjuk.

Futtatás Linuxon és macOS-en

A fentiek a Windows-on való futtatásra vonatkoznak. Linuxon és macOS-en a BBEdit szövegszerkesztőben tudunk a Notepad++-hoz hasonlóan futtatni interaktívan (a -i kapcsolóval) és mindkét oprendszeren rendelkezésre áll a VS Code fejlesztő környezet is.

A run_python.bat helyett létre kell hoznunk egy shell script fájlt pl. run_python.sh néven, majd futtathatóvá kell tennünk:

chmod +x run_python.sh
és ezt írjuk bele (persze a tényleges útvonallal):
/usr/bin/python3 -i test.py
echo "Press [Enter] to exit..."
read
A python.exe helyét így tudjuk megkeresni:
sudo find / -type f -name "python3" 2>/dev/null
A tabulátorokról és a karakterkódolásról elmondottak persze itt is érvényesek.


Execute a Python script — python-course.eu
Command line and environment — docs.python.org