Imprimir matriz en Python

Manav Narula 30 enero 2023
  1. Utilice el bucle for para imprimir el array en Python
  2. Utilice el método de comprensión de listas para imprimir el array en Python
Imprimir matriz en Python

Las matrices se utilizan mucho en matemáticas y estadística para la representación de datos y la resolución de múltiples ecuaciones lineales. En programación, las matrices 2D se tratan como un array.

En Python, tenemos muchas funciones y clases disponibles para realizar diferentes operaciones en matrices. En este tutorial, aprenderemos cómo imprimir un array en Python.

Mostramos cómo un array 2-D se imprime normalmente en Python con todos los corchetes y sin el espaciado adecuado en el siguiente código.

import numpy as np

a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])

print(a)

Producción :

[[1 2 3]
 [3 4 5]
 [7 8 9]]

En los métodos que se describen a continuación, imprimiremos el array en un formato de tipo de array limpia.

Utilice el bucle for para imprimir el array en Python

Este método iterará a través del array utilizando el bucle for e imprimirá cada fila individualmente después de formatearla correctamente. El siguiente código muestra cómo.

import numpy as np

a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])

for line in a:
    print("  ".join(map(str, line)))

Producción :

1  2  3
3  4  5
7  8  9

Usamos la función map, que convierte toda la fila en una cadena, y luego aplicamos la función join a toda esta fila que la convierte todo en una sola cadena y separa los elementos por el separador especificado.

Utilice el método de comprensión de listas para imprimir el array en Python

La comprensión de listas ofrece una forma concisa y elegante de trabajar con listas en una sola línea de código.

Este método también usa el bucle for pero se considera un poco más rápido que usarlo tradicionalmente, como en el método anterior.

Tome el siguiente código como ejemplo.

import numpy as np

a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])

print("\n".join(["".join(["{:4}".format(item) for item in row]) for row in a]))

Producción :

   1   2   3
   3   4   5
   7   8   9

Aunque el código anterior usa casi las mismas funciones que en el método anterior, lo hace de manera más eficiente y en una línea. La otra diferencia principal es la función format() que se utiliza aquí para proporcionar el espacio necesario entre los elementos de la cadena.

A continuación se muestra otra forma de emplear este método. Aquí dividimos el código por separado en líneas individuales e intentamos hacer que el array se parezca a una estructura similar a una tabla.

import numpy as np

a = np.array([[1, 2, 3], [3, 4, 5], [7, 8, 9]])

s = [[str(e) for e in row] for row in a]
lens = [max(map(len, col)) for col in zip(*s)]
fmt = "\t".join("{{:{}}}".format(x) for x in lens)
table = [fmt.format(*row) for row in s]
print("\n".join(table))

Producción :

1	2	3
3	4	5
7	8	9
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

Artículo relacionado - Python Matrix