Cómo invertir una cadena en Python (5 Métodos)

Una cadena es una lista ordenada o una secuencia de caracteres. Las cadenas son una de las estructuras de datos que vienen con Python. Mientras trabaja con cuerdas en Python, es posible que quieras tener todos los caracteres invertidos. Un buen ejemplo sería cuando estás creando un juego de palíndromos.

Una cadena invertida tiene su primer carácter como último carácter y así sucesivamente. Sin embargo, Python No viene con una función incorporada para invertir cadenas, pero son métodos que puedes usar.

En este tutorial, aprenderá diferentes métodos para invertir la cadena en Python.

Método 1: Revescribir la cadena en Python usando un bucle For

El primer método para invertir cadenas es utilizar un bucle for como se muestra en el siguiente fragmento de código:

Python Código:

# function for reversing a string
def reverse_string(string):
    # an empty string for storing reversed string
    reversed_string = ""
    # looping through the string
    for char in string:
        # reversing the string
        reversed_string = char + reversed_string
    # returning a reversed string
    return reversed_string

# the string to reverse
string = "Guru99"
# printing a message
print(f"String Reversal using a for loop")
# printing the original string
print(f"Original String: {string}")
# making a functional call inside a print function using an f-string
print(f"Reversed String: {reverse_string(string)}")

Salida:

String Reversal using a for loop
Original String: Guru99
Reversed String: 99uruG

Explicación del código:

  • En este fragmento de código, podemos usar cadena_inversa() función para la inversión de cuerdas tomando un dado cadena como argumento
  • Dentro de él, podemos crear una cadena vacía para almacenar la cadena invertida, luego recorremos la cadena.
  • Los personajes se invierten y se asignan a la cadena_invertida variable.
  • Finalmente, la última línea de la función devuelve la cadena invertida.
  • Para mostrar el resultado, estamos haciendo una llamada funcional dentro del imprimir() funcionar con la ayuda de una cuerda f.

Método 2: Revescribir la cadena en Python usando un bucle while

El uso del mientras bucle en Python También sería otro método para invertir una cuerda. Entendamos el siguiente fragmento de código:

Python Código:

# declaring a string to reverse
string = "Python"
# initializing an empty string to store the reversed string
reversed_string = ""
# printing a message
print(f"String Reversal using a while loop")
# printing the original string
print(f"Original String: {string}")
# find length of a string and store in count variable
count = len(string)
# a while loop for looping through the string characters
while count > 0:
    # save the value of str[count-1] in reversed_string
    reversed_string += string[count - 1]
    # decrementing index
    count = count - 1
print(f"Reversed String: {reversed_string}")

Salida:

String Reversal using a while loop
Original String: Python
Reversed String: nohtyP

Explicación del código:

  • En este Python código, estamos declarando una cadena que se va a invertir, luego una cadena vacía para almacenar la cadena invertida.
  • Luego encontramos la longitud de la cuerda que se asigna al contar variable.
  • El proyecto cadena[cuenta – 1] en cada iteración recupera los caracteres de la cadena del último al primero.
  • Y los concatena a cadena_invertida y luego disminuye el contar .
  • Finalmente, estamos imprimiendo la cadena invertida.

Método 3: Python RevErse String usando Slicer Operator

Otro método para invertir una cadena es usar un operador de corte; para entenderlo, vea el código a continuación:

Python Código:

# function to reverse a string
def reverse(string):
    # the  slice syntax
    reversed_string = string[::-1]
    return reversed_string

# declaring a string to reverse
string = "Let's guru99"
# printing a message
print(f"String Reversal using Slicer Operator")
# printing the original string
print(f"Original String: {string}")
# making a functional call inside a print function using an f-string
print(f"Reversed String: {reverse(string)}")

Salida:

String Reversal using Slicer Operator
Original String: Let's guru99
Reversed String: 99urug s'teL

Explicación del código:

  • Para crear un contrarrestar () función que toma un cadena como argumento, dentro de él
  • En este ejemplo, tenemos un cadena[::-1] operador de corte para invertir el cadena
  • Luego la cadena invertida se asigna a una nueva variable llamada cadena_invertida
  • Finalmente, se devuelve la nueva cadena invertida.

Método 4: RevInsertar una cadena en Python Usando la función reversed()

También podemos invertir una cadena usando un invertido () Python función, el código quedaría de la siguiente manera:

Python Ejemplo de código:

# function to reverse a string
def reverse(string):
    # reversed() function inside the join() function
    string = "".join(reversed(string))
    # returning the reversed string
    return string

# declaring a string to reverse
string = "guru99"
# printing a message
print(f"String Reversal using reversed() function")
# printing the original string
print(f"Original String: {string}")
# making a functional call inside a print function using an f-string
print(f"Reversed String: {reverse(string)}")

Salida:

String Reversal using reversed() function
Original String: guru99
Reversed String: 99urug

Explicación del código:

  • En este código, tenemos un invertido () función cuyo argumento es un cadena.
  • Dentro de él, hemos inicializado una cadena vacía.
  • Lo concatenamos con la salida de invertido (cadena) usando el unirse() función.
  • Afuera de invertido () función, hemos declarado una cadena para invertir, luego estamos imprimiendo la cadena original y la cadena invertida.

Método 5: Python RevErse String usando recursividad

La recursión significa que una función definida se llama a sí misma. Se dice que una función recursiva es recursiva cuando se llama a sí misma. Para entenderlo mejor, observe el siguiente ejemplo de código:

Python Código:

# a function to reverse a string
def reverse(string):
    # Checking the length of string
    if len(string) == 0:
        return string
    # reversing string if len(string) != 0
    else:
        # recursively calling the reverse() function
        return reverse(string[1:]) + string[0]

# declaring a string to reverse
string = "I love guru99"
# printing a message
print(f"String Reversal using Recursion")
# printing the original string
print(f"Original String: {string}")
# making a functional call inside a print function using an f-string
print(f"Reversed String: {reverse(string)}")

Salida:

String Reversal using Recursion
Original String: I love guru99
Reversed String: 99urug evol I

Explicación del código:

  • En el código anterior, hemos declarado un contrarrestar () función que toma un cadena como argumento, el cuerpo de la función es un si más .
  • El proyecto if La declaración comprueba si la longitud de la cadena es equivalente a 0 y devuelve la cadena, mientras que la más declaración llama a la contrarrestar () funciona de forma recursiva, corta el último índice de la cadena y lo agrega al inicio.

Conclusión

  • Este Python tutoriales Le ha guiado a través de la inversión de cadenas utilizando varios métodos en Python.
  • Podemos usar la función reverse_string() para invertir una cadena tomando una cadena determinada como argumento.
  • También puede utilizar el “bucle for y while” para agitar al revés.
  • Puede demandar una función invertida que toma una cadena como argumento.
  • Al elegir estos métodos, se debe considerar su rendimiento como uno de los factores.