Comment inverser une chaîne en Python (5 méthodes)

Une chaîne est une liste ordonnée ou une séquence de caractères. Les chaînes sont l'une des structures de données fournies avec Python. Lorsque vous travaillez avec des chaînes en Python, vous souhaiterez peut-être inverser tous les caractères. Un bon exemple serait lorsque vous créez un jeu palindrome.

Une chaîne inversée a son premier caractère comme dernier caractère et ainsi de suite. Cependant, Python n'est pas livré avec une fonction intégrée pour inverser les chaînes, mais ce sont des méthodes que vous pouvez utiliser.

Dans ce didacticiel, vous apprendrez différentes méthodes pour inverser la chaîne en Python.

Méthode 1 : inverser la chaîne en Python à l'aide d'une boucle For

La première méthode pour inverser des chaînes consiste à utiliser une boucle for comme dans l'extrait de code ci-dessous :

Code 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)}")

Sortie :

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

Explication du code :

  • Dans cet extrait de code, nous pouvons utiliser chaîne_inverse() fonction d'inversion de chaîne prenant une valeur donnée un magnifique comme argument.
  • À l’intérieur, nous pouvons créer une chaîne vide pour stocker la chaîne inversée, puis nous parcourons la chaîne.
  • Les caractères sont inversés et attribués au chaîne_inversée variable.
  • Enfin, la dernière ligne de la fonction renvoie la chaîne inversée.
  • Pour afficher la sortie, effectuez un appel fonctionnel à l'intérieur du impression() fonctionner à l’aide d’une f-string.

Méthode 2 : inverser la chaîne en Python à l'aide d'une boucle While

L'utilisation d'un boucle while en Python serait également une autre méthode pour inverser une chaîne. Comprenons l'extrait de code ci-dessous :

Code 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}")

Sortie :

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

Explication du code :

  • Dans ce code Python, nous déclarons une chaîne à inverser, puis une chaîne vide pour stocker la chaîne inversée.
  • Nous trouvons alors la longueur de chaîne qui est affectée au compter variable.
  • Le chaîne[compte – 1] à chaque itération, récupère les caractères de la chaîne du dernier au premier.
  • Et les concatène à chaîne_inversée puis décrémente le compter valeur.
  • Enfin, nous imprimons la chaîne inversée.

Méthode 3 : chaîne inversée Python à l'aide de l'opérateur Slicer

Une autre méthode pour inverser une chaîne consiste à utiliser un opérateur slice, pour vous y retrouver, voir le code ci-dessous :

Code 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)}")

Sortie :

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

Explication du code :

  • Créer un inverser () fonction qui prend un un magnifique comme argument, à l'intérieur
  • Dans cet exemple, nous avons un chaîne[::-1] opérateur de tranche pour inverser le un magnifique
  • Ensuite, la chaîne inversée est affectée à une nouvelle variable appelée chaîne_inversée
  • Enfin, la nouvelle chaîne inversée est renvoyée

Méthode 4 : Inverser une chaîne en Python à l'aide de la fonction reversed()

Nous pouvons également inverser une chaîne en utilisant un renversé() Fonction Python, le code ressemblerait à ceci :

Exemple de code 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)}")

Sortie :

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

Explication du code :

  • Dans ce code, nous avons un renversé() fonction dont l'argument est un un magnifique.
  • À l’intérieur, nous avons initialisé une chaîne vide.
  • Nous le concaténons avec la sortie de inversé (chaîne) utilisant l' joindre() la fonction.
  • En dehors de renversé() fonction, nous avons déclaré une chaîne à inverser, puis nous imprimons la chaîne d'origine et la chaîne inversée.

Méthode 5 : chaîne inversée Python utilisant la récursion

La récursivité signifie une fonction définie qui s'appelle elle-même. Une fonction récursive est dite récursive lorsqu’elle s’appelle elle-même. Pour mieux le comprendre, regardez ce qui suitwing exemple de code :

Code 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)}")

Sortie :

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

Explication du code :

  • Dans le code ci-dessus, nous avons déclaré un inverse () fonction qui prend un un magnifique en argument, le corps de la fonction est un si autre déclaration.
  • Le if L'instruction vérifie si la longueur de la chaîne est équivalente à 0 et renvoie la chaîne, tandis que l'instruction d'autre déclaration appelle le inverser () fonction de manière récursive, coupe le dernier index de la chaîne et l'ajoute au début.

Conclusion

  • Cette Tutoriel Python vous a expliqué comment inverser les chaînes en utilisant diverses méthodes en Python.
  • Nous pouvons utiliser la fonction reverse_string() pour l’inversion de chaîne en prenant une chaîne donnée comme argument.
  • Vous pouvez également utiliser « boucle for et while » pour une agitation inversée.
  • Vous pouvez poursuivre une fonction inversée qui prend une chaîne comme argument.
  • Lors du choix de ces méthodes, vous devez considérer leurs performances comme l’un des facteurs.