Ez a cikk segít az olvasónak megérteni az alapvető Python halmazokat és szótárakat néhány alapvető alkalmazással a valóságban. A Visual Studio Code-ot fogjuk használni kód szerkesztőként. Ha még nem telepítetted a Visual Studio Code-ot, az utasításokat a korábbi blogban találod.
Python halmazok és szótárak – tartalomjegyzék:
- Python halmazok
- Műveletek Python halmazokban
- Szótárak Pythonban
- Különbség a Python halmazok és szótárak között
Python halmazok
Egy halmaz egy módosítható és rendezetlen gyűjteménye az egyedi elemeknek. A halmazt kapcsos zárójelek ({}) között írjuk, az elemeket pedig vesszők választják el egymástól.
Definiálható a beépített set([iterable]) függvénnyel is. Ez a függvény egy iterálható (azaz bármilyen típusú sorozat, gyűjtemény vagy iterátor) argumentumot vár, és egy halmazt ad vissza, amely az inputból származó egyedi elemeket tartalmaz (a duplikált elemek eltávolításra kerülnek).
Például:
# Hozz létre egy halmazt # Egy karakterláncból print(set('Dev'))
Kimenet: {'e', 'v', 'D'}
# egy listából set(['Mayank', 'Vardhman', 'Mukesh', 'Mukesh'])
Kimenet: {'Mayank', 'Mukesh', 'Vardhman'}
# Egy tuple-ból set(('Lucknow', 'Kanpur', 'India'))
Kimenet: {'India', 'Kanpur', 'Lucknow'}
# egy szótárból set({'Sulphur': 16, 'Helium': 2, 'Carbon': 6, 'Oxygen': 8})
Kimenet: {'Carbon', 'Helium', 'Oxygen', 'Sulphur'} [/code> <p>Most már tudjuk, hogyan kell halmazokat létrehozni. Nézzük meg, mik a közös műveletek a halmazokban.</p> <h2 id="secondparagraph">Műveletek Python halmazokban</h2> <h3>Elem hozzáadása egy halmazhoz</h3> <p>Az elem hozzáadásának szintaxisa: set.add(element).</p> <p>A metódus helyben működik, módosítja a halmazt, és 'None'-t ad vissza.</p> <p>Például:</p> [code lang="js"] locations = set(('Lucknow','kanpur','India')) locations.add('Delhi') print(locations)
Kimenet: {'India', 'Delhi', 'Lucknow', 'kanpur'} [/code> <p>Python halmazokban nem tudunk elemet beszúrni egy adott indexbe, mert nem rendezettek.</p> <h3>Elem eltávolítása egy halmazból</h3> <p>Három módszer van, amellyel eltávolíthatunk egy elemet egy halmazból.</p> <p>Az alábbiakban találhatók:</p> <ul> <li>set.remove(element)</li> <li>set.discard(element)</li> <li>set.pop()</li> </ul> <p>Értsük meg ezt egy-egy példa segítségével minden megvalósításra:</p> <strong>set.remove(element)</strong> [code lang="js"] locations = set(('Lucknow', 'kanpur', 'India')) #Eltávolítja Lucknow-t a halmazból locations.remove('Lucknow') print(locations)
Kimenet: {'India', 'kanpur'} [/code> <strong>set.discard(element)</strong> [code lang="js"] locations = set(('Lucknow', 'kanpur', 'India')) # Eltávolítja 'Lucknow'-t a halmazból locations.discard('Lucknow') print(locations)
Kimenet: {'India', 'kanpur'} [/code> <p>Ahogy látható, mind a 'remove', mind a 'discard' metódus helyben működik, és módosítja ugyanazt a halmazt, amelyen hívják őket. 'None'-t adnak vissza.</p> <p>Az egyetlen különbség a 'remove' és a 'discard' függvény között az, hogy a 'remove' függvény kivételt (KeyError) dob, ha az 'element' nem található a halmazban. A kivétel nem dobódik a 'discard' esetében.</p> <strong>set.pop()</strong> [code lang="js"] locations = set(("Lucknow", 'Kanpur', 'India')) # Eltávolítja 'Lucknow'-t a halmazból removed_location = locations.pop() print(locations) print(removed_location)
Kimenet: {'Kanpur', 'Lucknow'} India [/code> <p>A 'pop' függvény nem fogad el argumentumokat, és eltávolít egy tetszőleges elemet a halmazból. Helyben működik, de más módszerekkel ellentétben visszaadja az eltávolított elemet.</p> <p>Tehát, áttekintettük a listákat, tuple-öket és a Python halmazokat. Most végül nézzük meg, hogyan működnek a dolgok a Python szótárakban.</p> <h2 id="thirdparagraph">Szótárak Pythonban</h2> <p>A Python szótárak alapvető adattípusok az adatok tárolására és lekérdezésére.</p> <p>A szótár egy beépített adatszerkezet, amely kulcs:érték párokat tárol, és hozzáférhetünk a kulcs vagy az érték alapján. <a href="https://en.wikibooks.org/wiki/Python_Programming/Dictionaries" target="_blank" rel="noopener">A Python szótárak</a> rendezetlenek, és a kulcsok nem lehetnek negatív egész számok. Ezen kívül, míg a kulcsoknak változatlannak kell lenniük, az értékeknek nem szükséges annak lenniük.</p> <p>A szótár létrehozásának szintaxisa, hogy két szögletes zárójelet helyezünk el bármilyen karakterlánc után, amelyet egy kettőspont követ (pl. {'a': 'b'}); ha több mint egy sorozatot adunk meg, akkor azokat külön zárójelekbe kell tenni (pl. {'a': 'b', 'c': 'd'}).</p> <p>Például:</p> [code lang="js"] # Üres szótár létrehozása Dictionary = {} print("Üres szótár: ") print(Dictionary)
Kimenet: Üres szótár: {} [/code> <p>Szótárat a beépített 'dict()' függvény segítségével is létrehozhatunk.</p> <p>Nézzük meg, hogyan tudjuk létrehozni:</p> [code lang="js"] # Szótár létrehozása # A dict() metódussal Dictionary = dict({1: 'Hello', 2: 'World', 3: '!!!'}) print("\nSzótár a dict() metódus használatával: ") print(Dictionary)
Kimenet: Szótár a dict() metódus használatával: {1: 'Hello', 2: 'World', 3: '!!!'} [/code> <p>Most nézzük meg, hogyan hozhatunk létre szótárat kulcs-érték párból álló tuple-ök listájával:</p> [code lang="js"] # Szótár létrehozása Dict = dict([(1, 'Hello'), (2, 'World')]) print("\nSzótár kulcs-érték párból álló tuple-ök listájával: ") print(Dict)Kimenet: Szótár kulcs-érték párból álló tuple-ök listájával: {1: ‘Hello’, 2: ‘World’} [/code>
Ne feledd, hogy a kulcsok érzékenyek a kis- és nagybetűkre.
Nézzük meg röviden, milyen módszerek találhatók a Python szótárban.

Különbség a Python halmazok és szótárak között
A halmaz egy értékek gyűjteménye, nem feltétlenül azonos típusú, míg a szótár kulcs-érték párokat tárol.
A Python halmazok olyan adatok gyűjteményei, amelyeknek nincs sorrendjük vagy kulcsaik. A halmaz nem tárol semmilyen adatot a tagjairól, csak azok identitását. A szótárak olyan gyűjtemények, amelyek egyedi kulcsokat térképeznek fel értékekhez. Továbbá, a szótárak tárolják a tagjaikra vonatkozó információkat, beleértve a kulcs-érték párt is.
Tehát, alapvető megértést szereztünk a listákról, tuple-ökről, halmazokról és szótárakról Pythonban. Néhány függvényt és azok megvalósítását is megvizsgáltuk.
Érdekelhet még a JavaScript tanfolyamunk 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.
Python Course From Beginner to Advanced in 11 blog posts:
- Python tuple-ök, listák, halmazok és szótárak. 3. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Python függvények. 7. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Bevezetés a Python tanfolyamba. 1. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Változók és adattípusok a Pythonban. 2. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Python halmazok és szótárak. 4. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Python osztályok és objektumok. 9. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Fájlok Pythonban. 10. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben
- Ciklusok a Pythonban. 6. rész Python tanfolyam kezdőtől haladóig 11 blogbejegyzésben
- Haladó funkciók a Pythonban. 8. rész Python tanfolyam kezdőtől a haladóig 11 blogbejegyzésben