Článok pomôže čitateľovi pochopiť základné množiny a slovníky v Pythone s niektorými základnými aplikáciami v reálnom svete. Ako náš editor kódu budeme používať Visual Studio Code. Ak ste si ešte nenainštalovali Visual Studio Code, pokyny sú uvedené v predchádzajúcom blogu.

Množiny a slovníky v Pythone – obsah:

  1. Množiny v Pythone
  2. Operácie v množinách Pythona
  3. Slovníky v Pythone
  4. Rozdiel medzi množinami a slovníkmi v Pythone

Množiny v Pythone

Množina je mutabilná a neusporiadaná kolekcia jedinečných prvkov. Množina je zapísaná pomocou zložených zátvoriek ({}), pričom prvky sú oddelené čiarkami.

Môže byť tiež definovaná pomocou vstavané funkcie set([iterable]). Táto funkcia prijíma ako argument iterovateľný objekt (t.j. akýkoľvek typ sekvencie, kolekcie alebo iterátora), vracajúc množinu obsahujúcu jedinečné položky z vstupu (duplicitné prvky sú odstránené).

Príklad:

# Vytvorenie množiny pomocou
# reťazca
print(set('Dev'))
Výstup:
{'e', 'v', 'D'}
# zoznamu
set(['Mayank', 'Vardhman', 'Mukesh', 'Mukesh'])
Výstup:
{'Mayank', 'Mukesh', 'Vardhman'}
# n-tice
set(('Lucknow', 'Kanpur', 'India'))
Výstup:
{'India', 'Kanpur', 'Lucknow'}
# slovníka 
set({'Sulphur': 16, 'Helium': 2, 'Carbon': 6, 'Oxygen': 8})
Výstup:
{'Carbon', 'Helium', 'Oxygen', 'Sulphur'}
[/code>

<p>Teraz vieme, ako vytvoriť množiny. Pozrime sa, aké sú bežné operácie v množinách.</p>
<h2 id="secondparagraph">Operácie v množinách Pythona</h2>
<h3>Pridanie prvku do množiny</h3>
<p>Syntax pre pridanie prvku je set.add(prvok).</p>
<p>Metóda funguje na mieste a modifikuje množinu a vracia 'None'.</p>
<p>Príklad:</p>
[code lang="js"]
locations = set(('Lucknow','kanpur','India'))
locations.add('Delhi')
print(locations)
Výstup:
{'India', 'Delhi', 'Lucknow', 'kanpur'}
[/code>

<p>V množinách Pythona nemôžeme vložiť prvok na konkrétny index, pretože nie sú usporiadané.</p>

<h3>Odstránenie prvku z množiny</h3>
<p>Existujú tri metódy, pomocou ktorých môžete vykonať odstránenie prvku z množiny.</p>
<p>Nižšie sú uvedené:</p>
<ul>
	<li>set.remove(prvok)</li>
	<li>set.discard(prvok)</li>
	<li>set.pop()</li>
</ul>

<p>Poďme to pochopiť pohľadom na príklad pre každú implementáciu:</p>

<strong>set.remove(prvok)</strong>
[code lang="js"]
locations = set(('Lucknow', 'kanpur', 'India'))
# Odstráni Lucknow z množiny
locations.remove('Lucknow')
print(locations)
Výstup:
{'India', 'kanpur'}
[/code>

<strong>set.discard(prvok)</strong>
[code lang="js"]
locations = set(('Lucknow', 'kanpur', 'India'))
# Odstráni 'Lucknow' z množiny
locations.discard('Lucknow')
print(locations)
Výstup:
{'India', 'kanpur'}
[/code>

<p>Vidíte, že metódy 'remove' a 'discard' fungujú na mieste a modifikujú tú istú množinu, na ktorej sú volané. Vrátia 'None'.</p>
<p>Jediný rozdiel medzi funkciou 'remove' a 'discard' je, že funkcia 'remove' vyvolá výnimku (KeyError), ak 'prvok' nie je prítomný v množine. Výnimka sa nevyvoláva v prípade 'discard'.</p>

<strong>set.pop()</strong>
[code lang="js"]
locations = set(("Lucknow", 'Kanpur', 'India'))
# Odstráni 'Lucknow' z množiny
removed_location = locations.pop()
print(locations)
print(removed_location)
Výstup:
{'Kanpur', 'Lucknow'} 
India
[/code>

<p>Funkcia 'pop' neberie žiadne argumenty a odstráni akýkoľvek ľubovoľný prvok z množiny. Funguje tiež na mieste, ale na rozdiel od iných metód vracia odstránený prvok.</p>
<p>Takže sme pokryli zoznamy, n-tice a množiny Pythona. Teraz sa konečne pozrime, ako fungujú veci v slovníkoch Pythona.</p>

<h2 id="thirdparagraph">Slovníky v Pythone</h2>
<p>Slovníky v Pythone sú základný typ dát pre ukladanie a získavanie údajov.</p>
<p>Slovník je vstavaná dátová štruktúra, ktorá ukladá páry kľúč:hodnota a môže byť prístupná buď pomocou kľúča alebo hodnoty. <a href="https://en.wikibooks.org/wiki/Python_Programming/Dictionaries" target="_blank" rel="noopener">Slovníky v Pythone</a> sú neusporiadané a kľúče nemôžu byť záporné celé čísla. Okrem toho, zatiaľ čo kľúče musia byť nemenné, hodnoty nemusia byť.</p>
<p>Syntax pre vytvorenie slovníka je umiestniť dve hranaté zátvorky za akúkoľvek sekvenciu znakov, nasledovanú dvojbodkou (napr. {'a': 'b'}); ak posielate viac ako jednu sekvenciu, musíte ich umiestniť do samostatných súborov zátvoriek (napr. {'a': 'b', 'c': 'd'}).</p>

<p>Príklad:</p>
[code lang="js"]
# Vytvorenie prázdneho slovníka
Dictionary = {}
print("Prázdny slovník: ")
print(Dictionary)
Výstup:
Prázdny slovník: {}
[/code>

<p>Slovník môžeme tiež vytvoriť pomocou vstavané funkcie známej ako 'dict()'.</p>
<p>Poďme sa pozrieť, ako ho môžeme vytvoriť:</p>
[code lang="js"]
# Vytvorenie slovníka
# Pomocou metódy dict()
Dictionary = dict({1: 'Ahoj', 2: 'Svet', 3: '!!!'})
print("\nSlovník pomocou metódy dict(): ")
print(Dictionary)
Výstup:
Slovník pomocou metódy dict(): 
1: 'Ahoj', 2: 'Svet', 3: '!!!'}
[/code>

<p>Teraz vytvorme slovník pomocou zoznamu n-tíc kľúča a hodnoty:</p>

[code lang="js"]
# Vytvorenie slovníka
Dict = dict([(1, 'Ahoj'), (2, 'Svet')])
print("\nSlovník pomocou zoznamu n-tíc kľúča a hodnoty: ")
print(Dict)
Výstup: Slovník pomocou zoznamu n-tíc kľúča a hodnoty: {1: ‘Ahoj’, 2: ‘Svet’} [/code>

Nezabudnite, že kľúče sú citlivé na veľkosť písmen.

Poďme sa stručne pozrieť, aké metódy sú prítomné v slovníku Pythona.

python_sets

Rozdiel medzi množinami a slovníkmi v Pythone

Množina je kolekcia hodnôt, nie nevyhnutne rovnakého typu, zatiaľ čo slovník ukladá páry kľúč-hodnota.

Množiny Pythona sú kolekcie údajov, ktoré nemajú žiadne poradie ani kľúče. Množina neukladá žiadne údaje o svojich členoch okrem ich identity. Slovníky sú kolekcie, ktoré mapujú jedinečné kľúče na hodnoty. Okrem toho slovníky ukladajú informácie o svojich členoch vrátane páru kľúč a hodnota.

Takže sme si vytvorili základné porozumenie o zoznamoch, n-ticiach, množinách a slovníkoch v Pythone. Taktiež sme preskúmali niektoré funkcie a ich implementácie.

Môžete sa tiež pozrieť na náš kurz JavaScript od začiatočníka po pokročilého.

Robert Whitney

Odborník na JavaScript a inštruktor, ktorý školí IT oddelenia. Jeho hlavným cieľom je zvýšiť produktivitu tímu tým, že učí ostatných, ako efektívne spolupracovať pri programovaní.

View all posts →