3. Változók és típusok
3.1. Első lépések: Üzenet a képernyőn
Mielőtt adatokat tárolnánk, tanuljuk meg, hogyan tudunk kommunikálni a felhasználóval! A legegyszerűbb művelet a programozásban, amikor megkérjük a számítógépet, hogy írjon ki egy szöveget a képernyőre.
A Pythonban erre a print() függvényt használjuk (a print angolul nyomtatást, kiírást jelent).
Fontos szabályok a kiíratásnál:
-
Idézőjelek: A szövegeket mindig idézőjelek közé kell tenni! Használhatsz szimpla (
' ') vagy dupla (" ") idézőjelet is, a Python mindkettőt megérti. -
Több dolog kiíratása: A
printfüggvénynek vesszővel elválasztva több mindent is megadhatsz. Ilyenkor a gép automatikusan egy-egy szóközt tesz az elemek közé:
Megjegyzések (Kommentek): A kódba írhatunk olyan sorokat, amiket a gép figyelmen kívül hagy. Ezek a megjegyzések (kommentek) nekünk, embereknek szólnak, hogy magyarázatot fűzzünk a programhoz, vagy ideiglenesen kikapcsoljunk egy kódrészletet.
-
Egysoros komment: A Pythonban az egysoros kommenteket a
#(kettős kereszt/hashtag) jellel kezdjük. -
Többsoros komment: Ha egy hosszabb, több soron átívelő magyarázatot szeretnénk írni, akkor a szöveget három dupla idézőjel (
""")vagy három szimpla idézőjel (''') közé zárjuk.
# Ez egy egysoros komment, a gép nem fogja lefuttatni.
print("Ezt viszont már kiírja a képernyőre.")
"""
Ez itt egy többsoros megjegyzés.
Ide írhatsz hosszabb leírásokat a programod működéséről,
a gép ezt is teljesen figyelmen kívül fogja hagyni
a kód futtatásakor.
"""
3.2. Változók: Adatok tárolása
A programozás során folyamatosan adatokkal dolgozunk: pontszámokkal, nevekkel, eredményekkel. Ahhoz, hogy ezeket az adatokat a számítógép memóriájában tárolni tudjuk, majd később újra elővehessük őket, változókat használunk.
Gondolj a változóra úgy, mint egy felcímkézett dobozra. Ráragasztasz egy nevet (a címkét), és beleteszel valamilyen értéket. A Pythonban egy változó létrehozása és az értékadás egyetlen lépésben történik, az egyenlőségjel (=) segítségével:
# Létrehozunk egy dobozt "kor" néven, és beletesszük a 17-es számot
kor = 17
# Létrehozunk egy dobozt "nev" néven, és beletesszük a "Péter" szöveget
nev = "Péter"
# A dobozok tartalmát bármikor kiírathatjuk:
print(nev)
Névadási szabályok változóknál:
-
Nem kezdődhet számmal (pl.
1jatekoshelyettjatekos1a helyes). -
Nem tartalmazhat szóközt (helyette használj aláhúzást:
legjobb_eredmeny). -
A Python megkülönbözteti a kis- és nagybetűket! A
Pontés apontkét külön változót jelent. -
Tipp: Érdemes mindig ékezet nélküli, beszédes neveket használni.
3.3. Adattípusok a Pythonban
A Python nagyon okos nyelv. Amikor létrehozol egy változót, nem kell előre megmondanod, hogy számot vagy betűt fogsz-e beletenni (ezt hívjuk dinamikus típusadásnak). A Python "belenéz" a dobozba, és az érték alapján automatikusan eldönti a típust.
Nekünk programozóknak azonban pontosan tudnunk kell, milyen adattípusokkal dolgozunk, hiszen szöveget például nem lehet osztani vagy szorozni. A legfontosabb alap adattípusokat az alábbi táblázat foglalja össze:
| Magyar elnevezés | Angol név | Python típus | Leírás és szabályok | Példa |
|---|---|---|---|---|
| Egész szám | Integer | int |
Pozitív vagy negatív egész számok, tizedesjegy nélkül. | 10, -5, 2024 |
| Lebegőpontos szám | Float | float |
Tizedestörtek. Fontos: a tizedeseket mindig ponttal választjuk el, sosem vesszővel! | 3.14, -0.5 |
| Szöveg | String | str |
Karakterek sorozata. Szimpla vagy dupla idézőjelek között kell megadni. | "Alma", 'Béla' |
| Logikai érték | Boolean | bool |
Kétféle értéket vehet fel: Igaz vagy Hamis. Kötelezően nagy kezdőbetűvel kell írni! | True, False |
Típus lekérdezése (A type() függvény)
Ha nem vagy biztos benne, hogy egy változó éppen milyen adattípust tárol, megkérdezheted a Pythontól a beépített type() függvény segítségével:
x = 42
print(type(x)) # Eredmény: <class 'int'> (Azaz integer, egész szám)
pi_erteke = 3.14
print(type(pi_erteke)) # Eredmény: <class 'float'> (Lebegőpontos szám)
vizsgal = True
print(type(vizsgal)) # Eredmény: <class 'bool'> (Boolean, logikai érték)
3.4. Változók és szövegek összefűzése: Az f-string (okos szöveg)
Nagyon gyakori feladat a programozás során, hogy egy kiírandó szövegbe bele akarjuk illeszteni egy (vagy több) változó tartalmát. Bár ezt a vesszős módszerrel is megtehetnénk, a Python kínál egy sokkal elegánsabb és profibb megoldást: ez az úgynevezett f-string (formázott string).
Ha egy szöveg kezdő idézőjele elé egy kis f betűt teszel, a szöveg "okossá" válik. Ezután bárhol a szövegen belül nyitsz egy kapcsos zárójelet { }, abba közvetlenül beleírhatod a változó nevét, és a Python automatikusan behelyettesíti az értékét!
nev = "Anna"
kor = 16
magassag = 1.65
# Az f-string használata:
print(f"Szia! Az én nevem {nev}, {kor} éves vagyok, és {magassag} méter magas.")
Kimenet:
Szia! Az én nevem Anna, 16 éves vagyok, és 1.65 méter magas.
Ez a módszer sokkal olvashatóbbá teszi a kódot, és nem kell bajlódni a felesleges szóközökkel vagy vesszőkkel.
💻 Feladatok
- Üdvözlet és kommentek: Hozz létre egy új programot! A kód legelejére írj egy többsoros kommentet, amelyben megadod a nevedet, az aktuális dátumot, és a feladat nevét. Ezután a program írja ki a képernyőre, hogy
"Szia!". - Adatok és típusok: Hozz létre három változót:
- Egyet, ami a korodat tárolja (egész szám).
- Egyet, ami a testmagasságodat tárolja méterben (pl. 1.75 - tizedestört).
- Egyet, ami a keresztnevedet tárolja (szöveg).
- Az f-string varázslata: Használd a 2. feladatban létrehozott változókat, és egyetlen f-stringet tartalmazó
print()utasítás segítségével írasd ki róluk a következő formátumú mondatot: Példa:"Az én nevem Dávid, 22 éves vagyok, és 1.80 méter magas vagyok." - Típusellenőrzés (Szorgalmi): A
type()függvény segítségével írasd ki a képernyőre a magasságodat tároló változó adattípusát!