Ez a cikk segít a Python tuple-ök, listák, halmazok és szótárak megértésének fejlesztésében. Néhány példát fogunk látni a megvalósításukra és a felhasználási eseteikre különböző feladatokhoz. A kódolás része a VS Code-ban fog történni. Ha még nem telepítetted a VS Code-ot, vagy szeretnél a nulláról kezdeni, kérlek látogass el a korábbi blogjainkra.

Python tuple-ök, listák, halmazok és szótárak – tartalomjegyzék:

  1. Bevezetés a Pythonba
  2. Listák a Pythonban
  3. Alapvető műveletek listákkal
  4. Python tuple-ök
  5. A Python tuple-ök és listák közötti különbség

Bevezetés a Python tuple-ök, listák, halmazok és szótárak világába

A korábbi blogban láttuk, hogyan használhatjuk a változókat és az adattípusokat a Pythonban. Néhány hasznos funkciót is megvizsgáltunk, amelyek az adattípusokkal és a változókkal kapcsolatosak.

A Python egy erőteljes szkriptnyelv. Számos beépített adatstruktúra áll rendelkezésre használatra. Ezek a struktúrák rendkívül hatékonyan kezelik az adatokat, ugyanakkor egyszerűen megvalósíthatók.

Ezek az alapvető struktúrák négy típusúak – lista, tuple, szótár és halmaz.

Listák a Pythonban

A listák beépítettek a Pythonban. Ezek módosíthatók, így elemeket lehet hozzáadni vagy eltávolítani anélkül, hogy megváltoztatnánk az eredeti tartalmukat, és az elemek index alapján érhetők el.

Annyira általánosak, hogy bármilyen típusú objektum tárolására használhatók, a karakterláncoktól kezdve a számokig, sőt még más objektumokig is. Továbbá, nem szükséges, hogy az összes elem ugyanabból a típusból álljon, egy lista különböző típusú elemeket is tartalmazhat.

A lista használatához egy változót kell inicializálni a [] segítségével.

Például:


# Egy üres lista
empty_list = []
# Lista azonos típusú elemekkel
same_type_list = [‘1’, ‘3’, ‘7’, ‘10’]
# Lista különböző típusú elemekkel
diff_type_list = [‘John’, ‘Dev’, 1.90, True]

Most már tudjuk, hogyan inicializáljuk a változót listával. Nézzük meg néhány alapvető műveletet.

Alapvető műveletek listákkal

Valaha is szeretnéd bejárni a lista elemeit anélkül, hogy egyesével végig kellene menned rajtuk? A Python számos hasznos funkciót biztosít. Ezek lehetővé teszik, hogy manipuláld őket anélkül, hogy iterálnod kellene a listán vagy ciklusba kellene állítanod minden egyes elemet.

A következők a Python öt leggyakrabban használt lista művelete:

1. len(list) – Visszaadja a lista hosszát. Ez segít az iterálásban, amikor valaki be akarja járni a listát.

Például:


# A lista hosszának kiírása
some_list = ['k', 'u',  'm', 'a', 'r']
print(len(some_list))
# Lista bejárása
for i in range(len(some_list)):
    print(some_list[i])

# Kimenet

5
k
u
m
a
r

2. max(list) – Visszaadja a megadott listában a legmagasabb értékű elemet, ha nincs döntetlen, akkor hibát ad vissza.

Például:

# A lista számának maximumának kiírása
num_list = [1, 2, 3, 4, 5, 12, 78, 900, 100]
print(max(num_list))
	

# Kimenet

900


3. min(list) – Visszaadja a megadott listában a legalacsonyabb értékű elemet, ha nincs döntetlen, akkor hibát ad vissza.

Például:

# A lista számának minimumának kiírása
num_list = [1,2,3,4,5,12,78,900,100]
print(min(num_list))


# Kimenet

1

4. sort(list) – Ez a funkció átnézi az összes adatot, és alapértelmezés szerint növekvő/csökkenő sorrendbe állítja őket, de ha a key paramétert átadjuk, akkor a lista az elemekre vonatkozó funkció kiértékelése alapján rendeződik.

A reverse paraméter szabályozza, hogy a rendezett (növekvő sorrendű) lista úgy maradjon-e, ahogy rendezve lett, vagy megfordul, azaz csökkenő sorrendbe kerül.

A szintaxis: list.sort(reverse=True|False, key= valamilyen funkció)

Például:

num_list = [1,2,3,4,5,12,78,900,100]
print(num_list)
num_list.sort()
print(num_list)
num_list.sort(reverse = True)
print(num_list)

Kimenet:

[1, 2, 3, 4, 5, 12, 78, 900, 100]
[1, 2, 3, 4, 5, 12, 78, 100, 900] 
[900, 100, 78, 12, 5, 4, 3, 2, 1]

5. map(function, sequence) – Ez a funkció itt egy funkciót alkalmaz a lista minden elemére. A szintaxis: map(fun, iter). Itt a ‘fun’ az a funkció, amelyet minden ‘iter’ elemre alkalmazni kell.

Például:

def square(n):
    return n * n

numbers = [1, 2, 3, 4]
result = map(square, numbers)
print(list(result))

kimenet:
[1, 4, 9, 16]

Sok más funkció is létezik a listákhoz. Most nézzük meg, mik a tuple-ök.

Python tuple-ök

Python_tuples

Tuple-öket egyszerűen úgy hozhatunk létre, hogy egy tuple-t zárójelek között, () deklarálunk, vagy bármilyen sorozatot tuple-vé alakítunk a beépített tuple() konstruktor segítségével.

# Üres tuple létrehozása
empty_tuple = ()

seq_set = {1,2,3}
seq_list = [2,3,4,5]
print(type(seq))
print(type(seq_list))
# Halmaz tuple-vé alakítása
seq_set_tuple = tuple(seq_set)

Kimenet:
<class 'set'> <class 'list'>
# Üres tuple létrehozása
empty_tuple = ()

seq_set = {1, 2, 3}
seq_list = [2, 3, 4, 5]
print(type(seq_set))
print(type(seq_list))
# Halmaz tuple-vé alakítása
seq_set_tuple = tuple(seq_set)
print(type(seq_set_tuple))

kimenet:

<class 'set'> <class 'list'> <class 'tuple'>


A tuple-ök olyanok, mint a listák, azzal a különbséggel, hogy a tuple-ök változatlanok. Akkor miért használjuk a tuple-öket?

A Python tuple-ök és listák közötti különbség

A tuple-ök változatlanok, míg a listák módosíthatók. Ez azt jelenti, hogy a tuple-ök nem változtathatók meg, miután létrehozták őket, míg a listák szerkeszthetők, hogy elemeket adjanak hozzá vagy távolítsanak el.

A listához hasonlóan a tuple is egy adatelemekből álló sorozat, amelyek nem feltétlenül azonos típusúak.

Például:

# Tuple azonos típusú elemekkel
same_type_list = ('1', '3', '7', '10')
print(same_type_list)

Kimenet:

('1', '3', '7', '10')
# Lista különböző típusú elemekkel
diff_type_list = ('John', 'Dev', 1.90, True)
print(diff_type_list)

# Kimenet

('John', 'Dev', 1.9, True)


Következő blogbejegyzés előzetes

A következő blogokban a halmazokról és szótárakról fogunk tanulni.

Érdemes megnézned a JavaScript tanfolyamunkat kezdőtől a haladó szintig.

Robert Whitney

JavaScript szakértő és oktató, aki IT osztályokat mentorál. Fő célja, hogy növelje a csapat termelékenységét azáltal, hogy megtanítja másoknak, hogyan működjenek együtt hatékonyan a kódolás során.

View all posts →