Você está aqui: Python ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
Como criar uma matriz bidimensional ou tridimensional em PythonQuantidade de visualizações: 4302 vezes |
Uma das dúvidas mais frequentes que surgem entre os visitas do site é como declarar e inicializar uma matriz de n linhas por m colunas, ou seja, uma matriz bidimensional ou tridimensional. Como a linguagem Python é dinamicamente tipada, e adiciona elementos a um vetor ou matriz também de forma dinâmica, a tarefa de se criar matrizes NxM nem sempre é uma tarefa trivial. Nessa dica eu mostrarei duas formas comumente empregadas para a criação de matrizes 2D e 3D. Veja a primeira forma: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): # vamos declarar e construir uma matriz de duas linhas # e três colunas linhas = 2 colunas = 3 matriz = [[0 for x in range(colunas)] for y in range(linhas)] # vamos exibir as linhas e colunas da matriz for i in range(len(matriz)): for j in range(len(matriz[i])): print(matriz[i][j], end=' ') ...... Ao executar este código Python nós teremos o seguinte resultado: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- 0 0 0 0 0 0 ...... Veja agora a segunda abordagem, na qual usamos a função append() da classe List e dois laços for para montar listas aninhadas. Veja: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): # vamos declarar e construir uma matriz de duas linhas # e três colunas linhas = 2 colunas = 3 matriz = [] # cria uma matriz vazia for i in range(linhas): linha = [] # cria uma linha vazia for j in range(colunas): linha.append(0) # adiciona o valor 0 matriz.append(linha) # adiciona a linha na matriz # vamos exibir as linhas e colunas da matriz for i in range(len(matriz)): ...... O resultado deste código é o mesmo do anterior. Veja agora como podemos criar uma matriz 3D, ou seja, tridimensional: ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): # vamos declarar e construir uma matriz de duas linhas, # três colunas e profundidade quatro linhas = 2 colunas = 3 profundidade = 4 matriz = [] # cria uma matriz 3D vazia for i in range(linhas): # criamos as linhas matriz.append([]) for j in range(colunas): # criamos as colunas matriz[i].append([]) for k in range(profundidade): # criamos a profundidade ...... Ao executar este código Python nós teremos o seguinte resultado: O valor é: 15 [[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]], [[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 15]]] Para finalizar, veja a forma compacta de se criar uma matriz 3D em Python usando "list comprehensions": ---------------------------------------------------------------------- Se precisar de ajuda com o código abaixo, pode me chamar no WhatsApp +55 (62) 98553-6711 (Osmar) ---------------------------------------------------------------------- def main(): # vamos declarar e construir uma matriz de duas linhas, # três colunas e profundidade quatro linhas = 2 colunas = 3 profundidade = 4 # cria a matriz 3D e a preenche com zeros usando list comprehensions # se possível, coloque tudo em uma linha, pois a idéia é a usar a forma # compacta matriz = [[[0 for k in range(profundidade)] for j in range(colunas)] ...... |
![]() |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
VB.NET - Como comparar strings em VB.NET usando o método Compare() da classe String do .NET Framework Delphi - Como usar o Delphi para verificar se um determinado processo do Windows está sendo executado |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |