További listákkal kapcsolatos műveletek
Lista rendezése ábécé szerint a sort() függvénnyel
Tegyük fel, hogy egy adott listában lévő hét népcsoportot ábécé sorrendben szeretnénk megjeleníteni.
Az alábbi kódrészlet segít nekünk ebben:
nationality = ["magyar", "osztrák", "német", "holland", "lengyel", "kínai", "arab"]
nationality.sort()
print(nationality)
Lekérdezés utáni eredmény:
['arab', 'holland', 'kínai', 'lengyel', 'magyar', 'német', 'osztrák']
Lista rendezése fordított ábécé szerint a sort(reverse=True) függvénnyel
Rendezzük a listában található országokat fordított ábécé sorrendbe. A kódunkban lévő egyetlen különbség a zárójelbe írt (reverse = True).
nationality = ["magyar", "osztrák", "német", "holland", "lengyel", "kínai", "arab"]
# Lista lekérdezése normál sorrendben - az előző példa eredményét mutatja
nationality.sort()
print(nationality)
# Lista lekérdezése fordított ábécé sorrendben
nationality.sort(reverse=True)
print(nationality)
Output:
['arab', 'holland', 'kínai', 'lengyel', 'magyar', 'német', 'osztrák']
['osztrák', 'német', 'magyar', 'lengyel', 'kínai', 'holland', 'arab']
Lista fordított ábécé sorrend a reverse() függvénnyel
A reverse() függvény szintén megfordítja a listába szereplő ábécébe rendezett elemek sorrendjét visszafelé. Tulajdonképpen ugyanazt az eredményt fogjuk kapni, mint a sort(reverse=True) utasítás használatával kaptunk.
Abban különbözik az elsődleges sort() függvénytől, hogy nem az elemeket rendezi ábécé sorrendbe, hanem az eredeti listában lévő elemek sorrendjét cseréli.
A kódunk így néz ki:
nationality = ["magyar", "osztrák", "német", "holland", "lengyel", "kínai", "arab"]
# Lista lekérdezése normál sorrendben
nationality.sort()
print(nationality)
# Lista lekérdezése fordított ábécé sorrendben a reverse() függvénnyel
nationality.reverse()
print(nationality)
Eredmény a konzolban:
['arab', 'holland', 'kínai', 'lengyel', 'magyar', 'német', 'osztrák']
['osztrák', 'német', 'magyar', 'lengyel', 'kínai', 'holland', 'arab']
Lista elemeinek megszámolása
A Python len() metódussal gyorsan és egyszerűen meg tudjuk számolni a listánkban szereplő elemeket. Ez azért előnyös, mert néha előfordulhat, hogy hosszú listákkal kell dolgoznunk. Ha előre kiíratjuk a konzolba, egy tisztább képet kapunk, hány elem van abban a listában, amivel dolgozunk majd.
Kód “szkript” - ünk:
nationality = ["magyar", "osztrák", "német", "holland", "lengyel", "kínai", "arab"]
# Lista kiíratása
print(nationality)
# Lista elemeinek megszámlálása
print(len(nationality))
# Lista elemeinek megszámlálása változó létrehozásával (opcionális)
counted_nationality = len(nationality)
print(counted_nationality)
Eredmény:
['magyar', 'osztrák', 'német', 'holland', 'lengyel', 'kínai', 'arab']
7
7
ÁTTEKINTÉS
Ebben a részben láthattuk, hogyan végezhetünk még több műveletet a listáinkkal, hogyan rendezhetjük ábécé szerint, – vagy visszafelé és meg is tudjuk számolni a lista elemeit.
Feladat
- Készíts egy listát az öt kedvenc pedagógusodról, akik nagy hatással voltak rád, amikor középiskolás voltál.
- Rendezd a neveket ábécé szerint, és fordított sorrendbe is mindkét módon.
- Végül pedig írasd ki a konzolban a listádban szereplő elemek számát is.
MEGOLDÁSOK (TOVÁBBI LISTÁKKAL KAPCSOLATOS MŰVELETEK)
Feladat:
# Létrehozzuk a listát és letároljuk a 'favourite_teachers' változóban
favorite_teachers = ["Rábai Lajos", "Kovács Tanár Úr", "Németh Tünde", "Horváth Melinda", "Balogh Endre"]
# Lekérdezzük az eredeti listánkat, hogy később a változtatásokkal össze tudjuk hasonlítani
print(favorite_teachers)
print("\n")
# Ábécé szerint rendezzük
favorite_teachers.sort()
print(favorite_teachers)
print("\n")
# Ábécé szerint visszafelé rendezzük
favorite_teachers.sort(reverse=True)
print(favorite_teachers)
print("\n")
# Ábécé szerint visszafelé cseréljük az elemeket
favorite_teachers.reverse()
print(favorite_teachers)
print("\n")
# Megszámoljuk és kiíratjuk a listaelemeink számát
counted_teachers = len(favorite_teachers)
print(counted_teachers)
Output:
['Rábai Lajos', 'Kovács Tanár Úr', 'Németh Tünde', 'Horváth Melinda', 'Balogh Endre']
['Balogh Endre', 'Horváth Melinda', 'Kovács Tanár Úr', 'Németh Tünde', 'Rábai Lajos']
['Rábai Lajos', 'Németh Tünde', 'Kovács Tanár Úr', 'Horváth Melinda', 'Balogh Endre']
['Balogh Endre', 'Horváth Melinda', 'Kovács Tanár Úr', 'Németh Tünde', 'Rábai Lajos']
5