5 techniques expertes pour inverser les chaînes en Python
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 une 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)}")
Résultat :
String Reversal using a for loop Original String: Guru99 Reversed String: 99uruG
Explication du code :
- Dans cet extrait de code, nous pouvons utiliser reverse_string() fonction d'inversion de chaîne prenant une chaîne donnée 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 à la chaîne_inversée. variable.
- Enfin, la dernière ligne de la fonction renvoie la chaîne inversée.
- Pour afficher le résultat, effectuez un appel fonctionnel dans print() fonctionner à l'aide d'une f-string.
Méthode 2 :Inverser une chaîne en Python à l'aide d'une boucle While
Utiliser une 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}")
Résultat :
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 recherchons ensuite la longueur de chaîne attribuée au compte variable.
- La chaîne[count – 1] à chaque itération, récupère les caractères de la chaîne du dernier au premier.
- Et les concatène en reversed_string puis décrémente le compte 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, consultez 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)}")
Résultat :
String Reversal using Slicer Operator Original String: Let's guru99 Reversed String: 99urug s'teL
Explication du code :
- Pour créer un reverse() fonction qui prend une chaîne comme argument, à l'intérieur
- Dans cet exemple, nous avons une string[::-1] opérateur slice pour inverser la chaîne
- Ensuite, la chaîne inversée est affectée à une nouvelle variable appelée reversed_string
- Enfin, la nouvelle chaîne inversée est renvoyée
Méthode 4 : Inverser une chaîne en Python à l'aide de la fonction reverse()
Nous pouvons également inverser une chaîne en utilisant un reversed() 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)}")
Résultat :
String Reversal using reversed() function Original String: guru99 Reversed String: 99urug
Explication du code :
- Dans ce code, nous avons un reversed() fonction dont l'argument est une chaîne .
- À l'intérieur, nous avons initialisé une chaîne vide.
- Nous le concaténons avec la sortie de reversed(string) en utilisant join() fonction.
- En dehors de reversed() 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 l'exemple de code suivant :
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)}")
Résultat :
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 reverse() fonction qui prend une chaîne en argument, le corps de la fonction est un if else déclaration.
- Le si L'instruction vérifie si la longueur de la chaîne est équivalente à 0 et renvoie la chaîne, tandis que l'instruction else L'instruction appelle reverse() fonction de manière récursive, découpe le dernier index de la chaîne et l'ajoute au début.
Conclusion
- Ce didacticiel Python vous a expliqué comment inverser des chaînes à l'aide de diverses méthodes en Python.
- Nous pouvons utiliser la fonction reverse_string() pour inverser une chaîne en prenant une chaîne donnée comme argument.
- Vous pouvez également utiliser les "boucles 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 prendre en compte leurs performances comme l'un des facteurs.
Résumez ce message avec :
Python
- Python Vs Ruby :Différence entre Ruby et Python
- Python - Prise de décision
- Python Renommer le fichier et le répertoire à l'aide de os.rename()
- Python JSON :encoder (dumps), décoder (chargers) et lire le fichier JSON
- Explorez la collection de livres officiels de Real Python – Maîtrisez Python du débutant au avancé
- Heures de bureau réelles de Python :sessions de questions-réponses en direct pour les apprenants de Python
- Flask vs Django :Quelle est la différence entre Flask et Django ?
- Python - Programmation multithread
- Répertoire Python et gestion des fichiers