Python: Adatszerkezetek III. – tuple

Olyan adatszerkezet, mint a lista, de NEM VÁLTOZTATHATÓK AZ ELEMEI.

A listába jellemzően homogén típusú elemeket szoktunk belepakolni. (Lehet többféle típust is, de ezt a lehetőséget nem szoktuk kihasználni.) A tuple-be tipikusan eltérő típusokat tárolunk.
Egy tuple kulcsok lehetnek egy szótárban.
Bejáráskor a tuple gyorsabb a listánál, feltéve, hogy nem akarjuk a bejárás során módosítani is.

Jele: ()

Tuple létrehozása

t1 = ()
t2 = (1, 2, 23.4, „Helló!”, False)
print(type(t1))

Érdekesség, hogy ha a tuple-be csak egy elemet teszünk, akkor a típusa nem tuple lesz, hanem olyan, mint amilyen elemet beletettünk. Viszont, ha úgy teszünk bele egy elemet, hogy utána írunk egy vesszőt is, akkor az már tuple lesz.

Alapvető műveletek

A tuple-t lehet indexelni.
print(t2[2]) ↦ 23.4
print(t2[3][1]) ↦ e (A „Helló!” 2. karaktere az „e”.)

A tuple-t lehet szeletelni.
print(t2[1:3]) ↦ 2, 23.4, Helló

Módosítás

Nagyon fontos azt hangsúlyozni, hogy a tuple elemei a létrehozás után nem módosíthatók, de magát a tuple-t lehet módosítani.
print((1,2,3,4) + (5,6,7))
print((„EKLG”,) *3) ↦ (‘EKLG’,’EKLG’,’EKLG’)

Metódusai

t3 = („a”, „l”, „m”, „a”, „f”, „a”)

print(t2.count())
print(t3.count(„a”)) ↦ 3
print(t3.index(„a”)) ↦ 0 (A legelső előfordulás.)
print(„a” in t3) ↦ True (Lehet not in!)

Tuple bejárása

for i in t3:
     print(i)