logo

Iteracija po seznamu seznamov v Pythonu

Ponavljanje po seznamu seznamov je običajna naloga v Pythonu, še posebej, ko imamo opravka z nabori podatkov ali matrikami. V tem članku bomo raziskali različne metode in tehnike za učinkovito ponavljanje ugnezdenih seznamov, ki zajemajo osnovne in napredne koncepte Python. V tem članku bomo videli, kako lahko ponovimo seznam seznamov v Pythonu.

Iteracija po ugnezdenem seznamu v Pythonu

Spodaj je nekaj načinov, s katerimi lahko ponavljamo seznam seznamov v Python :

Ponavljanje po seznamu seznamov

V tem primeru je ustvarjen seznam z imenom `list_of_lists`, ki vsebuje ugnezdene sezname. Z uporabo ugnezdenih for zank se vsak element na notranjih seznamih ponovi, stavek `print` pa prikaže elemente vodoravno znotraj vsakega podseznama, pri čemer je vsak podseznam v novi vrstici.



Python3




tostring v Javi

list_of_lists>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > for> sublist>in> list_of_lists:> >for> item>in> sublist:> >print>(item, end>=>' '>)> >print>()>

>

>

Izhod

1 2 3 4 5 6 7 8 9>

Uporaba seznamskega razumevanja

V tem primeru je ustvarjen ugnezdeni seznam z imenom `nested_list`. Razumevanje seznama se uporablja za sploščitev ugnezdene strukture v en sam seznam z imenom `sploščen_seznam`. Nastali sploščen seznam se nato natisne, kar prikazuje jedrnat in močan pristop k manipulaciji s seznami.

Python3




nested_list>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > flattened_list>=> [item>for> sublist>in> nested_list>for> item>in> sublist]> > print>(flattened_list)>

panda melt

>

>

Izhod

[1, 2, 3, 4, 5, 6, 7, 8, 9]>

Naštevanje nad ugnezdenim seznamom

V tem primeru je ustvarjen seznam z imenom `jeziki`, ki predstavlja programske jezike. The naštej() funkcija se uporablja v zanki for za iteracijo po seznamu, pri čemer med vsako iteracijo zagotovi indeks in jezik. Stavek `print` prikaže indeksiran seznam programskih jezikov z oštevilčenjem, ki se začne od 1.

Python3




nested_list>=> [[>1>,>2>,>3>], [>4>,>5>], [>7>,>8>]]> > for> i, inner_list>in> enumerate>(nested_list):> >for> j, element>in> enumerate>(inner_list):> >print>(f>'Value at index ({i}, {j}): {element}'>)>

>

c# vadnica
>

Izhod

Value at index (0, 0): 1 Value at index (0, 1): 2 Value at index (0, 2): 3 Value at index (1, 0): 4 Value at index (1, 1): 5 Value at index (2, 0): 7 Value at index (2, 1): 8>

Uporaba funkcije itertools.chain().

V tem primeru je itertools.chain() funkcija se uporablja za poravnavo ugnezdenega seznama z imenom `nested_list`. Sintaksa `*nested_list` se uporablja za razpakiranje notranjih seznamov, rezultat pa je sploščen seznam, ki se nato natisne.

preglasitev metode java

Python3




from> itertools>import> chain> > nested_list>=> [[>1>,>2>,>3>], [>4>,>5>,>6>], [>7>,>8>,>9>]]> > flattened_list>=> list>(chain(>*>nested_list))> print>(flattened_list)>

>

>

Izhod

[1, 2, 3, 4, 5, 6, 7, 8, 9]>

Zaključek

Torej, na splošno razumevanje sintakse in različnih operacij, povezanih z Python seznami je bistvenega pomena za učinkovito obdelavo in ponavljanje podatkov. Ne glede na to, ali delate s preprostim seznamom ali seznamom seznamov, zmožnosti seznama v Pythonu zagotavljajo močno osnovo za ravnanje s podatki.