RHCSA, RHCE, Linux, Ansible, AWS

Compreensão de Listas para Matrizes em Python

Compreensão de Listas para Matrizes em Python

Quando falamos sobre matrizes em Python, geralmente estamos lidando com listas aninhadas (listas dentro de outras listas). A compreensão de listas pode ser muito útil para criar ou manipular matrizes de forma simples e eficiente.

Sintaxe para Matrizes

Se você quiser criar uma matriz com compreensão de listas, basicamente vai usar duas expressões de compreensão de listas: uma para as linhas e outra para os elementos dentro das linhas.

A sintaxe seria algo assim:

matriz = [[expressão for item in linha] for linha in lista_de_listas]

Aqui:

Exemplo 1: Criando uma matriz 3×3

Vamos criar uma matriz 3×3 onde cada elemento é o quadrado do número formado pela sua posição (linha, coluna).

matriz = [[(i * j) for j in range(1, 4)] for i in range(1, 4)]
print(matriz)

Explicação:

Saída:

[[1, 2, 3], 
 [2, 4, 6], 
 [3, 6, 9]]

Aqui, criamos uma matriz 3×3 onde cada valor é o produto de sua linha e coluna.

Exemplo 2: Matriz com valores modificados

Agora, vamos criar uma matriz 3×3 onde os elementos são elevados ao quadrado.

matriz = [[(i * j) ** 2 for j in range(1, 4)] for i in range(1, 4)]
print(matriz)

Explicação:

Saída:

[[1, 4, 9], 
 [4, 16, 36], 
 [9, 36, 81]]

Exemplo 3: Filtrando em Matrizes

Você também pode usar condições dentro da compreensão de listas para filtrar valores em uma matriz.

Vamos criar uma matriz 3×3 com números de 1 a 9, mas somente os números pares.

matriz = [[(i * j) for j in range(1, 4) if (i * j) % 2 == 0] for i in range(1, 4)]
print(matriz)

Explicação:

Saída:

[[2], [4, 6], [6]]

Aqui, a matriz contém somente números pares, filtrados durante a criação.

Resumo

A compreensão de listas para matrizes permite criar e manipular facilmente listas de listas em Python (matrizes). Com ela, você pode:

É uma maneira poderosa de gerar e trabalhar com dados em duas dimensões!

Avatar de temweb

Sobre o autor

Categorias:

Deixe um comentário