Invertir una lista o una matriz es una tarea de programación común. Hay muchos casos en los que es posible que deba presentar los datos en orden inverso, como cuando ordena una lista.

¿Cómo se puede invertir una lista o una matriz con Python? Aprenderá los diferentes enfoques en este artículo.

Crear una copia con un bucle for

Mientras Bucle for de Python es más detallado, podría ser útil en algunos casos. Por ejemplo, proporciona más flexibilidad al realizar una lógica compleja en algunos puntos de la operación inversa.

Cuando se usa una sangría por loop, el enfoque común es iterar a través de la lista original en orden inverso. Comenzando con el elemento final, cada iteración agrega el elemento anterior a una nueva lista.

Dada una lista de enteros entre uno y nueve como ejemplo, aquí se explica cómo invertir una matriz usando una sangría por círculo:

idiomas = [1, 2, 3, 4, 5, 6, 7, 8, 9]

# Cree una lista vacía para contener la matriz invertida:
lista_invertida = []

# Resta uno de la longitud de la matriz original para comenzar desde el último índice:
reductor = len (idiomas)-1

# Invertir la lista dentro de un bucle for:
para i en idiomas:
lista_invertida.append (idiomas[reductor]) # Agregar el resultado a la lista vacía
reductor -=1 # Disminuye el índice en uno en cada iteración usando el reductor

imprimir (lista_invertida)

Producción:

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

Invertir una lista o una matriz mediante la comprensión de listas

UN lista de comprensión produce un código más corto. Y no hay necesidad de una variable temporal porque la comprensión de listas actúa sobre una lista en su lugar.

Para realizar la operación anterior, utilizando una lista por comprensión:

reductor = len (idiomas)

# Disminuye el índice dentro de una función de rango usando el bucle for en una lista de comprensión
Lista_invertida = [idiomas[reductor] para el reductor en el rango (reductor -1,-1,-1)]
imprimir (lista_invertida)

Producción:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Utilice el operador de división

El operador de segmento de lista es bastante sencillo, aunque tiene algunas limitaciones. Por ejemplo, es posible que no pueda personalizar la salida como lo haría al usar un por círculo.

Aquí se explica cómo invertir una lista usando el operador de división:

idiomas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
lista_rev = idiomas[::-1]
imprimir (rev_list)

Producción:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Él [::-1] sintaxis es un atajo inteligente que da como resultado una lista invertida. En realidad, significa "copiar todos los elementos de la lista, comenzando desde el final y contando hacia atrás", es decir, "invertirlo".

Utilice el método inverso de una matriz

Este es otro método que actúa en el lugar: modifica la matriz original. Esto puede ser un inconveniente ya que no puede conservar la lista anterior para otras operaciones.

Aquí se explica cómo invertir una matriz utilizando el método inverso:

idiomas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
idiomas.reverse()
imprimir (idiomas)

Producción:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Usa la función invertida

La función invertida itera sobre una lista, matriz o cualquier otra secuencia y devuelve su copia invertida. Sin embargo, debe declarar explícitamente la salida invertida como una lista.

Así es como funciona:

idiomas = [1, 2, 3, 4, 5, 6, 7, 8, 9]
imprimir (listar (invertida (idiomas)))

Producción:
[9, 8, 7, 6, 5, 4, 3, 2, 1]

Ser creativo con matrices

Las matrices o listas son formas comunes de almacenar datos. Dependiendo de su objetivo, es posible que desee presentar los datos al cliente en orden inverso. Una forma de hacer esto es invertir la matriz o lista antes de representarla. Como has visto, hay un par de formas de invertir una lista en Python. Elija lo que funcione mejor para usted y se alinee con su lógica para un problema específico.

También es posible que desee ver cómo invertir una matriz en otros lenguajes de programación para comprender mejor la lógica de fondo.

Cómo invertir una matriz en C++, Python y JavaScript

Leer siguiente

CuotaPíoCuotaCorreo electrónico

Temas relacionados

  • Programación
  • Programación
  • Pitón
  • Algoritmos

Sobre el Autor

Idowu Omisola (138 Artículos Publicados)

A Idowu le apasiona la tecnología inteligente y la productividad. En su tiempo libre, juega con la codificación y cambia al tablero de ajedrez cuando está aburrido, pero también le encanta romper con la rutina de vez en cuando. Su pasión por mostrarle a la gente el camino alrededor de la tecnología moderna lo motiva a escribir más.

Más de Idowu Omisola

Suscríbete a nuestro boletín

¡Únase a nuestro boletín para obtener consejos técnicos, reseñas, libros electrónicos gratuitos y ofertas exclusivas!

Haga clic aquí para suscribirse