Přejít na hlavní obsah

Jak správně vytvořit vnořený seznam v Pythonu

Python - jeden z nejpopulárnějších programovacích jazyků na světě. Je známý svou jednoduchostí a stručností syntaxe, což z něj dělá skvělý nástroj pro začátečníky i profesionály. Jednou z nejdůležitějších datových struktur v Pythonu je seznam. Seznam je uspořádaná sbírka prvků, které lze změnit. Vnořený seznam jsou seznamy, které jsou do sebe vnořeny. Umožňují nám organizovat data a zpracovávat je flexibilněji a efektivněji.

V tomto článku se podíváme na to, jak správně vytvořit vnořený seznam v jazyce Python a jak přistupovat k jeho prvkům a provádět s ním různé operace.

Vytvoření vnořeného seznamu v Pythonu

Chcete-li vytvořit vnořený seznam v Pythonu, musíte použít hranaté závorky a oddělit položky čárkami. Každá položka seznamu může být libovolným typem dat, včetně jiného seznamu. Podívejme se na příklad:

Základy vytváření vnořeného seznamu v Pythonu

Vytvořit vnořený seznam v Pythonu lze použitím hranatých závorek a čárek k oddělení položek seznamu. Vnořené seznamy mohou obsahovat všechny typy dat, včetně jiných seznamů.

Zde je příklad, jak vytvořit jednoduchý podsložkový seznam:

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

V tomto příkladu vytvoříme seznam složený ze tří podsložek. Každý podsložkový seznam obsahuje tři čísla.

Pro přístup k položkám vnořeného seznamu lze použít indexaci. Chcete-li například získat přístup k první položce prvního vnořeného seznamu, musíte napsat:

first_element = nested_list[0][0]

Můžete také přistupovat k položkám vnořeného seznamu pomocí cyklů. Chcete-li například odvodit všechny položky prvního vnořeného seznamu, můžete použít následující kód:

for item in nested_list[0]:print(item)

V důsledku toho bude odstraněn:

Vnořené seznamy lze také použít k vytvoření složitějších datových struktur, jako jsou matice nebo stromy. Můžete například vytvořit matici 3x3 pomocí vnořených seznamů:

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

Vnořené seznamy v Pythonu jsou velmi flexibilní a lze je použít v široké škále situací. Umožňují pohodlné ukládání a zpracování strukturovaných dat, díky čemuž je Kód čitelnější a srozumitelnější.

Vytvoření vnořeného seznamu

Vnořený seznam je seznam, který může obsahovat další seznamy. Tato struktura dat umožňuje organizovat ukládání a zpracování hierarchických informací. Můžete například vytvořit seznam, který obsahuje seznamy s informacemi o zboží v obchodě:

inventory = [["Молоко", 10, 40],["Хлеб", 5, 30],["Яблоки", 20, 50],["Сок", 15, 70]]

V tomto příkladu je každý vnořený seznam informací o konkrétním produktu a obsahuje jeho název, množství a cenu.

K oslovení položek v podsložce se používají indexy. Chcete-li například získat název prvního produktu, můžete použít následující kód:

product_name = inventory[0][0]

V důsledku provádění tohoto kódu bude proměnná product_name obsahovat hodnotu "mléko".

Vnořené seznamy mohou mít jakoukoli hloubku přílohy a lze přistupovat k položkám Interních seznamů pomocí indexů jako řetězce. Chcete-li například získat cenu džusu, můžete použít následující kód:

juice_price = inventory[3][2]

V důsledku provádění tohoto kódu bude proměnná juice_price obsahovat hodnotu 70.

Vytvoření vnořeného seznamu tak umožňuje efektivní organizaci ukládání a zpracování strukturovaných dat v Pythonu.

Práce s položkami vnořeného seznamu

Vnořený seznam je seznam obsahující další seznamy jako položky. Vytvoření vnořeného seznamu v Pythonu je poměrně jednoduché, stačí zadat jiný seznam jako položku hlavního seznamu. Pro práci s položkami vnořeného seznamu lze použít různé metody a funkce jazyka Python.

Přístup k položkám v podsložce

Pro přístup k položkám v podsložce je nutné použít indexy, stejně jako pro přístup k prvkům v jednorozměrném seznamu. Chcete - li získat položku vnořeného seznamu, musíme zadat index externího seznamu a poté index interního seznamu:

lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] element = lst[0][1] # získání položky s hodnotou 2

Získání všech položek v podsložce

Pro získání všech položek v podsložce lze použít dvojitý cyklus:

lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] for sublist in lst: for element in sublist: print(element)

Změna položek vnořeného seznamu

Pro změnu položek v podsložce je také nutné použít indexy. Chcete-li změnit položku vnořeného seznamu, musíme zadat index externího seznamu a poté index interního seznamu:

lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] lst[0][1] = 10 # změna prvku s hodnotou 2 na 10

Přidání položek vnořeného seznamu

K přidání položek v podsložce můžete použít metodu append():

lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] lst.append([10, 11, 12]) # přidání nového seznamu na konec vnořeného seznamu

Odstranění položek v podsložce

K odstranění položek vnořeného seznamu lze použít metodu del:

lst = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] del lst[0][1] # odstranění položky s hodnotou 2 z prvního seznamu

Práce s položkami vnořeného seznamu je v Pythonu snadný úkol. Pomocí indexů a vestavěných metod lze snadno přijímat, upravovat, přidávat a odstraňovat položky v podsložce.

Změna položek vnořeného seznamu

Chcete-li změnit položky vnořeného seznamu v Pythonu, musíte se obrátit na položku, kterou chcete změnit, a přiřadit jí novou hodnotu. Pro přístup k položkám v podsložce můžete použít indexaci.

Zde je příklad změny položky vnořeného seznamu:

nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]nested_list[0][1] = 10print(nested_list)
[[1, 10, 3], [4, 5, 6], [7, 8, 9]]

V tomto příkladu se podíváme na položku s indexem 0 v externím seznamu a na položku s indexem 1 v podsložce. Tomuto prvku pak přiřadíme novou hodnotu 10. Výsledkem je upravený podsložkový seznam.

Stejným způsobem můžete změnit jakoukoli jinou položku v podsložce tím, že ji oslovíte příslušnými indexy.

Odstranění položek z vnořeného seznamu

Při práci s vnořenými seznamy v Pythonu je někdy nutné odstranit určité položky ze seznamu. K tomu lze použít různé metody a funkce.

Jedním ze způsobů, jak odstranit položku z vnořeného seznamu, je použití metody remove() . Tato metoda přijme položku seznamu jako argument a odstraní ji ze seznamu.

nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]element_to_remove = 5for sublist in nested_list:if element_to_remove in sublist:sublist.remove(element_to_remove)

Po provedení tohoto kódu bude položka 5 odstraněna z vnořeného seznamu.

Dalším způsobem, jak odstranit položky z vnořeného seznamu, je použití funkce del . Tato funkce umožňuje odstranit položku podle jejího indexu.

nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]index_to_remove = 1for sublist in nested_list:del sublist[index_to_remove]

Po provedení tohoto kódu bude položka s indexem 1 odstraněna z každého vnořeného seznamu.

Pokud jsou vnořené seznamy různé délky, může odstranění položky v indexu způsobit chybu "IndexError". Aby se předešlo takovým chybám, doporučuje se použít funkci pop (), která odstraní položku podle jejího indexu a vrátí její hodnotu.

nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]index_to_remove = 1for sublist in nested_list:sublist.pop(index_to_remove)

Po provedení tohoto kódu bude položka s indexem 1 odstraněna z každého vnořeného seznamu a její hodnotu bude možné uložit do proměnné.

Při odstraňování položek z vnořeného seznamu je třeba vzít v úvahu, že indexy ostatních položek budou po odstranění změněny.

Pomocí metod remove (), del nebo funkce pop () lze tedy snadno odstranit určité položky z vnořeného seznamu v Pythonu.