Seznamy seznamů jsou běžnou datovou strukturou v Pythonu a poskytují všestranný způsob organizace a manipulace s daty. Při práci s vnořenými seznamy je důležité pochopit, jak efektivně indexovat prvky a přistupovat k nim. V tomto článku prozkoumáme tři způsoby indexování seznamů seznamů v Pythonu pomocí vytvoření vzorového seznamu, následované příklady pomocí dělení, cyklů for a porozumění seznamu.
Příklad
Input : [[1, 2, 3], [4,5,6],[7,8,9]] Output : 6>
Indexování seznamů seznamů v Pythonu
Níže jsou uvedeny metody indexování seznamů seznamů v Krajta .
- Použitím Pro Loop
- Použitím Porozumění seznamu
- Použitím Krájení
Vytvoření seznamu seznamů
Než se pustíme do metod indexování, začněme vytvořením vzorového seznamu seznamů: Pro účely tohoto článku použijeme tentomatrix>jako náš vzorový seznam seznamů.
Python3
java len pole
# Sample list of lists> matrix>=> [> >[>1>,>2>,>3>],> >[>4>,>5>,>6>],> >[>7>,>8>,>9>]> ]> |
>
>
Indexování seznamů seznamů v Pythonu pomocí For Loop
V tomto příkladu kód ukazuje indexování seznamu seznamů pomocí vnořené smyčky for. Iteruje každý řádek a sloupec matice a tiskne prvek na každé pozici spolu s jeho souřadnicemi.
Python3
# Indexing using a for loop> rows>=> len>(matrix)> columns>=> len>(matrix[>0>])> print>(>'
Using For Loop:'>)> for> i>in> range>(rows):> >for> j>in> range>(columns):> >print>(f>'Element at ({i}, {j}): {matrix[i][j]}'>)> |
>
java převést int na řetězec
>
Výstup
Using For Loop: Element at (0, 0): 1 Element at (0, 1): 2 Element at (0, 2): 3 Element at (1, 0): 4 Element at (1, 1): 5 Element at (1, 2): 6 Element at (2, 0): 7 Element at (2, 1): 8 Element at (2, 2): 9>
Indexování seznamů seznamů v Pythonu pomocí funkce List Comprehension
V tomto příkladu níže uvedený kód využívá porozumění seznamu ke zploštění seznamu seznamů (matrix>) do jednoho seznamu (flat_list>). Výstižně kombinuje prvky z každého řádku do jednotné struktury, což má za následek zploštělou reprezentaci původních vnořených dat.
Python3
# Indexing using list comprehension> flat_list>=> [element>for> row>in> matrix>for> element>in> row]> print>(>'
Using List Comprehension:'>)> print>(>'Flattened List:'>, flat_list)> |
>
mapa java
>
Výstup
Using List Comprehension: Flattened List: [1, 2, 3, 4, 5, 6, 7, 8, 9]>
Indexování seznamů seznamů v Pythonu pomocí krájení
V tomto příkladu tento kód ukazuje indexování seznamu seznamů pomocí dělení. Extrahuje první řádek a druhý sloupec z matice, což ukazuje použití dělení pro efektivní přístup ke konkrétním částem vnořených dat.
instance Java
Python3
# Indexing rows using slicing> first_row>=> matrix[>0>]> second_column>=> [row[>1>]>for> row>in> matrix]> print>(>'Using Slicing:'>)> print>(>'First Row:'>, first_row)> print>(>'Second Column:'>, second_column)> |
>
>
Výstup
Using Slicing: First Row: [1, 2, 3] Second Column: [2, 5, 8]>
Závěr
Indexování seznamů seznamů v Pythonu je základní dovedností a metody popsané v tomto článku – pomocí dělení, cyklů for a porozumění seznamům – poskytují různé přístupy k efektivnímu přístupu a manipulaci s vnořenými datovými strukturami. Vyberte metodu, která nejlépe vyhovuje vašemu konkrétnímu případu použití, abyste dosáhli optimální čitelnosti kódu a výkonu.