Jeden zo základných a všestranných dátových typov v Pythone je zoznam. Zoznam Pythonu je zbierka objednaných položiek oddelených čiarkami. Zoznam pythónov je premenlivý a položky v zozname môžete zmeniť.
Tento tutoriál vám ukáže, ako vytvoriť zoznam pythónov, a ponúkne rôzne spôsoby, ako nájsť maximálnu hodnotu v zozname.
Ako vytvoriť zoznam Python
Začnime základmi: ako vytvoriť zoznam.
POZNÁMKA: Ak ste už oboznámení s vytváraním zoznamov pythonu, pokojne preskočte dopredu.
Na vytvorenie zoznamu v Pythone pridáme všetky položky (každú položku oddeľte čiarkou) do dvojice hranatých zátvoriek []
Položky v zozname Python môžu podporovať rôzne typy údajov, vrátane reťazcov, celých čísel, floatov, slovníkov a dokonca aj vnorených zoznamov.
Nasledujúci príklad vytvorí zoznam s názvom my_list s rôznymi položkami.
# inicializujte prázdny zoznammôj_list= []
# zoznam s celými číslami, reťazcami, plavákmi, slovníkmi a vnorenými zoznamami
môj_list_= [10, 'Hello World', 10.1, ['nested_list', {'kľúč':'hodnota'}, 10]]
V prvom zozname inicializujeme zoznam bez položiek. Ďalej ho naplníme rôznymi typmi údajov vrátane celých čísel, reťazcov, plávajúcich slovníkov, slovníkov a zoznamov.
Ako pristupovať k položkám zoznamu
K položkám v zozname môžeme pristupovať rôznymi spôsobmi. Pre jednoduchosť budeme diskutovať iba o dvoch metódach.
Prvý:
1: Indexovanie poľa
Na prístup k položkám v poli pomocou prístupu indexovania poľa používame operátor indexu v Pythone. Vnútri operátora míňame index, ku ktorému chceme mať prístup.
POZNÁMKA: Indexovanie v Pythone začína na indexe 0. To znamená, že prvá položka v zozname je vždy index 0.
Zvážte nasledujúci príklad:
db= [„MySQL“,
'PostgreSQL',
'SQLite',
'MongoDB',
„MariaDB“,
„Redis“,
„Server Microsoft SQL“,
„Oracle“,
„Firebase“,
„Elasticsearch“
]
Predpokladajme, že vyššie uvedený zoznam obsahuje najobľúbenejšie databázy. Na nájdenie najpoužívanejšej databázy môžeme použiť syntax:
vytlačiť(db[0])Vyššie uvedené vyhlásenie by malo vrátiť MySQL.
POZNÁMKA: Prístup k položkám mimo indexu zoznamu spôsobí chybu indexu. Zoznam db obsahuje napríklad 10 položiek. To znamená index 10thpoložka je 10 - 1, pretože index začína na 0.
Ak sa pokúsime získať prístup k 10thindex, zobrazí sa chyba:
vytlačiť(db[10])IndexError: uvedenie indexu mimo rozsah
Vyššie uvedená metóda je užitočná, keď viete, koľko položiek je v zozname. Ak si nie ste istí položkami v zozname, môžete použiť druhú metódu.
2: Použitie slučky
Jednoduchý spôsob prístupu k všetkým položkám v zozname je použitie cyklu for. Príklad kódu pre to je uvedený nižšie:
db= [„MySQL“,
'PostgreSQ;',
'SQLite',
'MongoDB',
„MariaDB“,
„Redis“,
„Server Microsoft SQL“,
„Oracle“,
„Firebase“,
„Elasticsearch“
]
prepoložkavdb:
vytlačiť(položka)
Toto zacyklí každú položku v zozname db a vytlačí všetky položky v nej.
Príkladom výstupu pre to je:
MySQLPostgreSQ;
SQLite
MongoDB
MariaDB
Redis
Server Microsoft SQL
Oracle
Firebase
Elastické vyhľadávanie
Ako nájsť maximálnu hodnotu v zozname Python
Teraz sa ponoríme do podstaty tohto článku; ako nájsť maximálnu hodnotu v zozname. V tomto prípade implementujeme rôzne metódy na dosiahnutie rovnakého výsledku.
1: Použitie metódy triedenia
Prvá metóda, ktorú môžeme použiť na nájdenie maximálnej hodnoty v zozname Python, je metóda triedenia.
Za týmto účelom odovzdáme názov zoznamu metóde sort (), ktorá zoradí všetky hodnoty vzostupne. Po procese triedenia zoznamov môžeme pristúpiť k poslednej položke v poli, aby sme získali najväčšiu hodnotu.
Zoberme si napríklad pole hodnôt uvedených nižšie:
hodnoty= [10, 29,34, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10, 64,3
]
Jednoducho môžeme zavolať metódu triedenia oproti vyššie uvedenému zoznamu a získať poslednú položku.
Na získanie poslednej položky v poli môžeme použiť možnosť indexovania a určiť index ako -1, čo je posledná položka.
Zvážte nasledujúci kód:
hodnoty= [10, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10
]
hodnoty.triediť()
vytlačiť(f„Maximálna hodnota v zozname je: {values [-1]} ')
Akonáhle spustíme kód vyššie, mali by sme získať maximálnu hodnotu ako:
Maximálna hodnotavthezoznam je:7732: Použitie If ... else
Ďalším jednoduchým spôsobom, ako získať maximálnu hodnotu v zozname, je použiť jednoduchý príkaz if ... else.
Aby sme to implementovali, najskôr predpokladáme, že najväčšia hodnota je prvá položka v indexe. Ďalej prechádzame každou položkou v zozname a kontrolujeme, či je väčšia ako počiatočná hodnota. Preto je nastavený ako maximálna hodnota; v opačnom prípade prejdite na ďalší.
Zvážte implementáciu uvedenú nižšie:
hodnoty= [10, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10
]
# predpokladajme, že maximálna hodnota je na indexe 0
maximum=hodnoty[0]
preivhodnoty:
kebyi>maximum:
maximum=i
vytlačiť(f„Maximálna hodnota je: {maximum}“)
Podobne, ak spustíme vyššie uvedený kód, mali by sme získať maximálnu hodnotu 773. Tu je príklad výstupu:
Maximálna hodnotaje:7733: Použitie funkcie Max
Python má vstavanú maximálnu funkciu, ktorú môžete použiť na vyhľadanie maximálnej hodnoty v iterácii. Ak napríklad v zozname reťazcov zavoláme funkciu max, vráti poslednú položku so reťazcami usporiadanými v abecednom poradí.
Tu je príklad:
hodnoty= [10, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10
]
vytlačiť(f„Maximálna hodnota je: {max (values)}“)
4: Použitie najväčšej metódy hromadenia frontu
Netradičným spôsobom, ako nájsť najväčšiu hodnotu v zozname, je použiť metódu nlargest v module Heap Queue.
Tento modul implementuje algoritmus hromadného frontu. Získajte viac informácií o module frontu haldy Pythonu.
Metóda nlargest vráti zadané najväčšie hodnoty. Ak napríklad zadáte 5, metóda vráti 5 najväčších hodnôt v zadanej iterácii.
Napríklad:
odpísanie na strojiimportZobrazenie hodnôtimport halda
hodnoty= [
10, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10
]
vytlačiť(f„Maximálna hodnota je {heapq.nlargest (1, hodnoty)}“)
Vyššie uvedený kód by mal vrátiť hodnotu ako 773.
Maximálna hodnotaje:773Ak chcete zobraziť 5 najväčších hodnôt, nastavte počet položiek na 5 ako:
odpísanie na strojiimportZobrazenie hodnôtimport halda
hodnoty= [
10, 2. 3, 72, 110, 773, 322, 63, 1, 3. 4, 5, 10
]
vytlačiť(f'Maximálne hodnoty v poradí sú {heapq.nlargest (5, hodnoty)}')
To by malo vrátiť výstup podobný tomu, ktorý je uvedený nižšie:
Maximálne hodnotyvobjednávka sú[773, 322, 110, 72, 63]Napriek tomu, že uvedená metóda môže byť zbytočná, v niektorých prípadoch môže byť užitočná.
Záver
Tento tutoriál vám ukázal, ako vytvárať zoznamy Pythonu, pristupovať k položkám v zozname a rôzne spôsoby, ako získať maximálne hodnoty v zozname Python.
Ďakujem za čítanie!