5 técnicas expertas para invertir cadenas en Python
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 cadenas en Python, es posible que desee invertir todos los caracteres. Un buen ejemplo sería cuando estás creando un juego palíndromo.
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:invertir 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:
Código Python:
# 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 reverse_string() función para inversión de cadena tomando una cadena dada como argumento.
- Dentro de él, podemos crear una cadena vacía para almacenar la cadena invertida, luego recorremos la cadena.
- Los caracteres 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 realizando una llamada funcional dentro de print() funcionar con la ayuda de una cadena f.
Método 2:invertir cadena en Python usando un bucle While
Usar un bucle while en Python también sería otro método para invertir una cadena. Entendamos el siguiente fragmento de código:
Código Python:
# 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 código Python, declaramos que una cadena se invertirá y luego una cadena vacía para almacenar la cadena invertida.
- Luego encontramos la longitud de la cadena que se asigna al recuento variable.
- La cadena[count – 1] en cada iteración recupera los caracteres de la cadena del último al primero.
- Y los concatena en reversed_string y luego disminuye el recuento valor.
- Finalmente, estamos imprimiendo la cadena invertida.
Método 3:cadena inversa de Python usando el operador de segmentación
Otro método para invertir una cadena es usar un operador de corte; para comprenderlo, consulte el código a continuación:
Código Python:
# 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 reverse() función que toma una cadena como argumento, dentro de él
- En este ejemplo, tenemos una cadena[::-1] operador de corte para invertir la cadena
- Luego, la cadena invertida se asigna a una nueva variable llamada cadena_invertida
- Finalmente, se devuelve la nueva cadena invertida
Método 4:Invertir una cadena en Python usando la función invertida()
También podemos invertir una cadena usando un reversed() Función Python, el código quedaría de la siguiente manera:
Ejemplo de código Python:
# 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 una cadena .
- Dentro de él, hemos inicializado una cadena vacía.
- Lo concatenamos con la salida de reversed(string) usando unir() función.
- Fuera del invertido() función, hemos declarado una cadena para invertir, luego estamos imprimiendo la cadena original y la cadena invertida.
Método 5:Cadena inversa de Python usando recursividad
Recursión significa una función definida que se llama a sí misma. Una función recursiva se dice que es recursiva cuando se llama a sí misma. Para entenderlo mejor mira el siguiente ejemplo de código:
Código Python:
# 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 inverso () función que toma una cadena como argumento, el cuerpo de la función es un if else declaración.
- El si La declaración comprueba si la longitud de la cadena es equivalente a 0 y devuelve la cadena, mientras que else La declaración llama al reverse() funciona de forma recursiva, corta el último índice de la cadena y lo agrega al inicio.
Conclusión
- Este tutorial de Python 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 puedes utilizar el “bucle for y while” para agitar en reversa.
- Puede demandar una función invertida que toma una cadena como argumento.
- Al elegir estos métodos, debe considerar su rendimiento como uno de los factores.
Resume esta publicación con:
python
- Python Vs Ruby:Diferencia entre Ruby y Python
- Sueño de Python ()
- Decoradores de pitón
- Python romper, continuar, pasar declaraciones con ejemplos
- Python - Sintaxis básica
- Python JSON:codificar (volcados), decodificar (cargas) y leer archivos JSON
- Python - Módulos
- Intercambiar dos variables de Python sin usar una tercera
- Cola de Python:FIFO, ejemplo de LIFO
- Python CALENDARIO Tutorial con ejemplo
- Python strptime()