Kihagyás

Python szkriptek és futtatásuk

A Bíróhoz való belépés ellenőrzése, szükség esetén a problémák megoldása. Aki nem tette volna meg korábban, az regisztráljon a Bíróba ezen a linken! Ha valaki nem biztos abban, hogy már regisztrált, az inkább regisztráljon újra! Követelmények ismertetése!

Elkészítjük a legelső Python szkriptünket. Ezt követően megismerkedünk a Python vezérlési szerkezeteivel (szelekciós vezérlés, ciklusok). Szó lesz a függvényekről, valamint a string adattípusról szóló ismereteinket is bővíteni fogjuk.

Az előző gyakorlaton a parancssori értelmező interaktív módban történő használatával hajtottunk végre Python utasításokat. A gyakorlatban viszont a Python kódunkat általában egy fájlba szoktuk kiszervezni. Az ilyen fájlokat szkripteknek nevezzük. A Python szkriptjeink kiterjesztése .py lesz.

Hozzunk létre egy új fájlt test.py néven, és írjuk bele az alábbi kódot!

1
2
3
print("Ez az első Python szkriptem!")
szam = 40 + 2
print("Az élet értelme:", szam)

Mentsük el a szkriptet, majd parancssorban navigáljunk el abba a mappába, ahol a fájl található! Ebben a mappában a python test.py (szükség esetén python3 test.py) parancs kiadásával futtassuk a megírt szkriptünket!

A futtatás után a Python értelmező sorról sorra értelmezi és végrehajtja a szkriptünkben szereplő utasításokat. A programunk kimenete:

Kimenet

Ez az első Python szkriptem! Az élet értelme: 42

A Python blokkszintaxisa

C-ben és Javában kapcsos zárójelek ({...}) között adhattunk meg utasításblokkokat (pl. vezérlési szerkezetek, függvények esetén).

Pythonban viszont kapcsos zárójelek helyett az úgynevezett indentálás (beljebb igazítás) dönti el, hogy mely utasítások mely blokkokhoz tartoznak. Tehát az egyes blokkokhoz tartozó kódrészeket mindig beljebb kell igazítanunk!

Figyeljük meg a Pythonra jellemző blokkszintaxist az alábbi kódban!

1
2
3
4
5
6
7
8
9
pontszamok = [81, 96, 56, 100, 89]
otosok_szama = 0

for pontszam in pontszamok:
    if pontszam >= 89:        # 1. indentálási szint
        otosok_szama += 1     # 2. indentálási szint
        print("Találtunk egy ötöst!")

print("Összesen", otosok_szama, "hallgató kapott ötöst.")
  • Az if szerkezet közvetlenül a for utasítás blokkjába tartozik (1. indentálási szint).
  • A for-on belüli if utasítás blokkjába két utasítás tartozik (2. indentálási szint).

Figyelem

Fontos, hogy egy blokkon belül mindig ugyanannyi helyközt használjunk az indentálásra (pl. mindenhol 4 darab szóközt)! Ellenkező esetben IndentationError hibaüzenetet kapunk.


Utolsó frissítés: 2022-09-05 11:41:50