0Pricing
Python Academy · Aula

Listas aninhadas e iteração

Trabalhe com listas aninhadas e itere com eficiência usando laços for.

Listas aninhadas e iteração é uma aula grátis de Python Academy no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Python Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Python Academy inclui 4 aulas no total.

Introdução

As listas podem conter outras listas, criando estruturas multidimensionais. Dominar a iteração aninhada é essencial para trabalhar com grades e matrizes.

Estrutura de listas aninhadas

matrix = [[1,2,3],[4,5,6],[7,8,9]] é uma grade 3x3. matrix[1][2] acessa a linha 1, coluna 2 — que contém 6.
matrix = [[1,2,3],[4,5,6],[7,8,9]]
print(matrix[1][2])

Iterando sobre linhas

for row in matrix: print(row) exibe cada sublista. row é uma lista por si só, e você pode indexá-la.
matrix = [[1,2],[3,4]]
for row in matrix:
    print(row)

Laços for aninhados

for row in matrix: for val in row: print(val) exibe cada elemento individual.
matrix = [[1,2],[3,4]]
for row in matrix:
    for val in row:
        print(val, end=' ')

Achatar uma lista aninhada

[x for row in matrix for x in row] achata um nível. Esta é uma compreensão de lista aninhada.
matrix = [[1,2],[3,4]]
flat = [x for row in matrix for x in row]
print(flat)

Construindo uma grade

Crie uma grade N×M: grid = [[0]*M for _ in range(N)] Utilize uma compreensão de lista, não (NOT) [[0]*M]*N, que cria linhas com alias.
grid = [[0]*3 for _ in range(3)]
grid[0][0] = 1
print(grid)

A armadilha da linha com alias

grid = [[0]*3]*3 cria três referências à mesma linha. Modificar uma modifica todas. Utilize sempre uma compreensão.
bad = [[0]*3]*3
bad[0][0] = 9
print(bad)  # all rows changed!

zip() para iteração paralela

for a, b in zip(list1, list2) percorre duas listas em paralelo. zip() para na lista mais curta.
names = ['Alice', 'Bob']
scores = [90, 85]
for n, s in zip(names, scores):
    print(n, s)

enumerate() com listas aninhadas

for i, row in enumerate(matrix): for j, val in enumerate(row): fornece tanto os índices quanto os valores.
matrix = [[1,2],[3,4]]
for i, row in enumerate(matrix):
    for j, val in enumerate(row):
        print(f'[{i}][{j}]={val}')

Ordenando uma lista de listas

sorted(data, key=lambda x: x[1]) ordena pelo segundo elemento de cada sublista.
data = [['Bob',85],['Alice',90],['Charlie',78]]
data.sort(key=lambda x: x[1])
print(data)

Transpondo uma matriz

transposed = list(zip(*matrix)) transforma linhas em colunas. O * desempacota a lista externa como argumentos para zip.
matrix = [[1,2,3],[4,5,6]]
print(list(zip(*matrix)))

Verificação rápida

Qual é a maneira correta de criar uma grade 3x3 preenchida com zeros para evitar a armadilha da linha com alias?

Recapitulação

Listas aninhadas: acesse com [row][col] e percorra com laços for aninhados. Utilize uma compreensão para construir grades. Use zip() para iteração paralela e zip(*matrix) para transpor.

Continue

Muito bem! Passe à próxima lição para continuar desenvolvendo suas habilidades.

Perguntas Frequentes

A aula “Listas aninhadas e iteração” é grátis?

Sim — o texto completo de “Listas aninhadas e iteração” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Python Academy, atualize para CoddyKit PRO. O curso de Python Academy inclui 4 aulas no total.

O que vou aprender em “Listas aninhadas e iteração”?

Trabalhe com listas aninhadas e itere com eficiência usando laços for. Você pratica Python Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Python Academy?

Nenhuma experiência prévia é necessária. Python Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.

Quanto tempo leva a aula “Listas aninhadas e iteração”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Python Academy?

Sim. Cada aula de Python Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Criação e acesso a listas
  2. Modificação de listas
  3. Tuplas e imutabilidade
  4. Listas aninhadas e iteração
← Voltar para Python Academy