Python | Invertir una tupla

Como sabemos que en Python, las tuplas son inmutables, por lo que no se pueden cambiar ni alterar. Esto nos proporciona formas limitadas de invertir una tupla, a diferencia de una lista. Veremos algunas técnicas sobre cómo se puede invertir una tupla en python.
Ejemplos:

Input : tuples = ('z','a','d','f','g','e','e','k')
Output : ('k', 'e', 'e', 'g', 'f', 'd', 'a', 'z')

Input : tuples = (10, 11, 12, 13, 14, 15)
Output : (15, 14, 13, 12, 11, 10)

Método 1: Usando la técnica de rebanado.
En esta técnica, se hace una copia de la tupla y la tupla no se ordena en el lugar. Dado que las tuplas son inmutables, no hay forma de invertir una tupla en el lugar. Crear una copia requiere más espacio para contener todos los elementos existentes. Por lo tanto, esto agota la memoria.

# Reversing a tuple using slicing technique
# New tuple is created
def Reverse(tuples):
    new_tup = tuples[::-1]
    return new_tup
      
# Driver Code
tuples = ('z','a','d','f','g','e','e','k')
print(Reverse(tuples))

Producción:

('k', 'e', 'e', 'g', 'f', 'd', 'a', 'z')

Método 2: usar la función incorporada reversed().
En este método, no hacemos ninguna copia de la tupla. En cambio, obtenemos un iterador inverso que usamos para recorrer la tupla, similar a la lista.

# Reversing a list using reversed()
def Reverse(tuples):
    new_tup = ()
    for k in reversed(tuples):
        new_tup = new_tup + (k,)
    print new_tup
  
# Driver Code
tuples = (10, 11, 12, 13, 14, 15)
Reverse(tuples)

Producción:

(15, 14, 13, 12, 11, 10)

Publicación traducida automáticamente

Artículo escrito por Chinmoy Lenka y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *