MIT KELL TUDNUNK A VÁLTOZÓKRÓL?

3. LECKE

🧩 Most kezded igazán „érteni” a programozást.
Ez a lecke a miértekről szól — arról, hogyan gondolkodik a gép.

A változók olyanok, mint a gondolataink: elnevezzük őket, megjegyezzük, majd újra elővesszük.
Ha ezt a részt megérted, onnantól már bármit tudsz építeni a Pythonban. 🚀

A változók adatokat tárolnak a programban, amelyek értéke a futás során megváltozhat. Segítségükkel nevekhez rendelhetünk adatokat, így könnyebben olvasható és kezelhető lesz a kód.

A lecke tartalma

I. A változók funkciója

Amikor mi számokat adunk össze az agyunkban “helyet” foglalunk ezeknek a számoknak. Majd ha összeadtuk és leírtuk őket, elfelejtjük. Helyükbe más számok lépnek. Ez igaz a számítógépre is. Ahhoz, hogy számokat tudjunk tárolni a gép memóriájában, valamilyen tulajdonsággal felruházott helyet kell számukra lefoglalni.

Ha el szeretnénk tárolni a program futása során valami adatot a számítógép memóriájában, akkor változókat (variable) kell használnunk. A változó létrehozását deklarálásnak (declare) nevezik. Programozási nyelvtől függően lehet, hogy azt is definiálni kell, hogy milyen típusú adatot szeretnénk tárolni a változóban, mert ettől is függ a szükséges memória mérete. 

A Python szerencsére egy dinamikus programozási nyelv (dynamic programming language), azaz egy változó tetszőleges típusú adatot tárolhat. Viszont a Python erősen típusos nyelv (strongly typed), ami azt jelenti, hogy nem lehet csak úgy összevissza a különböző típusú adatokat egy műveletben használni.
Hétköznapibb példa lehet az, ha a változókat úgy képzeljük el, mint egy halom üres fiókot. Kinyitunk egyet, és belerakunk egy tetszőleges értéket. A fiókokat nevekkel látjuk el, így tudunk majd hivatkozni a bennük tárolt értékekre. A fiókoknak természetesen van méretük is, így akármekkora adatot nem lehet tárolni bennük.
Tehát amikor a Python olyan utasítást kap, amely egy adott változóra hivatkozik, az abban a változóban tárolt értékekre alkalmazza.
Az első fejezetben a Pythonnak ezt a parancsot adtuk:
				
					print("Hello! Üdv mindenkinek!")
				
			

A “print” parancssorral tulajdonképpen kiíratjuk a zárójelben és az idézőjelek közötti szöveget.

De mi lenne, ha a “Hello! Üdv mindenkinek!” szöveget először a számítógépünk memóriájában tárolnánk el, és csak ezután hívnánk elő és íratnánk ki a PyCharm kódszerkesztőnk konzoljában?

Ehhez a művelethez csak egy új változót kell bevezetnünk. 

A példa kedvéért legyen most a változó nevünk “greeting”, amely magyarul üdvözletet jelent. A változónk értéke pedig, amit meg fogunk adni: “Hello! Üdv mindenkinek!”

A program kódunk, ami a változó értékét eltárolja a memóriába így néz ki:

				
					greeting = "Hello! Üdv mindenkinek!"
				
			

Most pedig írassuk ki a változónk értékét az alábbiak szerint:

				
					print(greeting)
				
			

A teljes kódunk tehát így néz ki:

				
					greeting = "Hello! Üdv mindenkinek!"
print(greeting)
				
			

A konzolban az alábbi sort láthatjuk:

Végeredményül ugyanazt kapjuk, mint az 1. fejezetben létrehozott kódunk írt ki nekünk.

				
					print("Hello! Üdv mindenkinek!")
				
			

A különbség annyi, hogy a Python értelmezte a kód első sorát (greeting = “Hello! Üdv mindenkinek!”), és utasítást kapott tőlünk arra, hogy az általunk beírt szöveget egy “greeting” nevű változóban tárolja el.

				
					greeting = "Hello! Üdv mindenkinek!"
				
			

Ez azt jelenti, hogy a Python a „greeting” kifejezést úgy értelmezi, hogy „Hello! Üdv mindenkinek!” minden olyan kód környezetben, ahol megjelenik. Ezt rendeltük hozzá.

A Python ezután beolvassa a második sort “print(greeting)”. Ez neki annyit jelent, hogy “Nyomtasd ki (írasd ki, jelenítsd meg a képernyőn) a “greeting” változóban tárolt értéket.

				
					print(greeting)
				
			

II. SZABÁLYOK

A lehetséges bevezethető változó nevekre nincs korlátozás. De néhány dologra azért oda kell figyelnünk a változók létrehozása során. Ellenkező esetben hibaüzenetek fognak megjelenni és a programunk nem fog lefutni.

  1. Ne használjunk numerikus azonosítókat a változónév első karaktereként. Rossz példa erre:

2. Kezdőbetűként használjunk alfabetikus karaktert vagy aláhúzást. Jó példa:

3. Ha változót hozol létre, ne írj bele szóközt. Ahelyett, hogy szóközt használnál a változó nevében az egyes szavak között, használj aláhúzást. Íme egy rossz -és egy jó példa:

4. Ne tegyél idézőjelet a változók neve köré.

5. Kerüld a változók elnevezését a Python-ban alapból már használt parancsokra, utasítás szavakra. Ezek olyan kifejezések, amelyeket a Python alapértelmezés szerint biztosít a nyelven belüli bizonyos kontextusokban való használatra. A Python tiltja ezeket a kifejezéseket változóként való használatát az összetévesztés lehetősége miatt.

Rossz példa lehet erre az, ha változó névnek a kiíratási parancs szavát adod meg:

A változóknak függetlennek kell lenniük.

Válassz tömör, leíró neveket. Legyenek beszédesek, hogy mindenki aki tud írni és olvasni, értse mire gondolsz.

Ez kulcsfontosságú információ ahhoz, hogy más programozókkal együtt tudj dolgozni ugyanazon a projekten. A kódunk szerkezete, felépítése egy kép és a változók “beszélnek”. Ergo a kódunkból a fejlesztők olvasnak. De lényeges, hogy megértsék, amit a programban írunk.

Ellenőrizd, hogy jól írtad-e be a változó nevét.

Nem kell aggódnod amiatt, hogy esetleg az angol szavak miatt valamit rosszul gépelsz le. Nyelvhelyesség szempontjából nézve a változó neve lényegtelen és a kreativitásodon múlik.

A Python a szabályain belül bármilyen változóval tud dolgozni, amit létrehozol. Az egyetlen probléma az lehet, hogy ha létrehoztál már egy változót és a következő helyen (pl. kiíratásnál) használni szeretnéd és véletlenül elgépeled (kihagysz egy betűt, esetleg kis-nagybetű különbözik a két helyen).

Ezen a képernyőfelvételen az látszik, hogy egy elírás történt vagy a változó nevében vagy pedig a nyomtatási parancsban (print). A változót átneveztük _greeting – re, amelyben van egy alsó vonal. Viszont a nyomtatásnál ugyan úgy maradt, ahogyan fentebb használtuk. 

Mi történik ilyenkor?

A programot a Python nem tudja végrehajtani és hibát fog jelezni, mivel nem ismeri a változó nevét.

A program a deklarált változót tekinti helyesnek, amelynek már értéket is adtunk. A hibaüzenetből is látszik, hogy megkérdezi tőlünk, hogy a _greeting nevű változóra gondolunk vajon?

Ha egy változót deklarálás nélkül használsz fel, hibák jelennek meg a program futtatásakor.

Érdemes még egyszer ránézni, hogyan deklaráltuk fentebb a greeting változót:

				
					greeting = "Hello! Üdv mindenkinek!"
print(greeting)
				
			

A Python a greeting-et változóként kezeli. Ha ezt a változót egy parancsban (pl. kiíratáskor) használni szeretnénk, és nem deklarálnánk (nem hoznánk létre) előtte, minden kísérletünk sikertelen lenne és hibákat eredményezne.

🧠 III. ÁTTEKINTÉS

Ebben a leckében megértetted a Python változók létrehozásának módját. Ezenkívül megismerted a szabályokat, irányelveket, amelyeket mindenkinek követni kell az új változók létrehozásakor.

✍️ IV. HÁZI FELADAT

  1. Állíts be három nevet egy változó értékének, legyen Katalin, András és Zsanett.
  2. A hozzárendelt változó neve legyen my_friends (barátaim).
  3. Írasd ki a konzolba a változó értékét.
  4. Cseréld ki az 1.pontban ismertetett változó értékeit az alábbi nevekre: Anita, István, Gábor
  5. Futtasd a programot a változtatások után!

Fontos!

A feladatok a gyakorlásra vannak. A gyakorlással pedig tapasztalatot szerzel. Mindenképp javasolt, hogy a feladatokat önállóan oldd meg, majd ha végeztél, csak akkor nézel rá a megoldásra.

MEGOLDÁSOK (VÁLTOZÓK)

1 – 3 lépés:

				
					my_friends ="Katalin, András, Zsanett"
print(my_friends)
				
			

4 – 5  lépés:

				
					my_friends ="Anita, István, Gábor"
print(my_friends)
				
			

VI. VISSZAJELZÉS

➡️ Mennyire volt érthető a mai lecke?

Segítsd kérlek a munkánkat, hogy a jövőben még hasznosabb tartalmakat tudjunk készíteni és fejlődhessünk.  A visszajelzés teljesen anonym, nincs szükség sem az e-mail címedre, sem a személyes adataidra. A kérdőív kitöltése csak 1 percet vesz igénybe.

Köszönöm, ha rászánsz egy percet – minden visszajelzés segít, hogy még érthetőbb anyagot formálhassak. 🙏

Sok sikert kívánok a lecke feldolgozásához!

A következő témánk a karakterláncok lesznek, szintén egy lépéssel előre fog vinni a fejlődésben.

Üdv:
Mészáros Csaba

PythonProject.hu
“Tanulj meg Pythonban gondolkodni – lépésről lépésre.”