Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Python

5 techniques expertes pour inverser une chaîne de caractères en Python

Une chaîne de caractères est une séquence ordonnée de caractères. Python ne possède pas de fonction intégrée pour inverser une chaîne, mais plusieurs méthodes permettent d'y parvenir. Ce tutoriel présente cinq approches différentes.

Méthode 1 : Inversion avec une boucle for

def inverser_chaine(chaine):
    chaine_inversee = ""
    for caractere in chaine:
        chaine_inversee = caractere + chaine_inversee
    return chaine_inversee

chaine = "Guru99"
print(f"Inversion avec une boucle for")
print(f"Chaîne originale : {chaine}")
print(f"Chaîne inversée : {inverser_chaine(chaine)}")

Sortie :

Inversion avec une boucle for
Chaîne originale : Guru99
Chaîne inversée : 99uruG

Explication : On parcourt chaque caractère et on le préfixe à la nouvelle chaîne, construisant ainsi l'inverse.

Méthode 2 : Inversion avec une boucle while

chaine = "Python"
chaine_inversee = ""
print(f"Inversion avec une boucle while")
print(f"Chaîne originale : {chaine}")
compteur = len(chaine)
while compteur > 0:
    chaine_inversee += chaine[compteur - 1]
    compteur -= 1
print(f"Chaîne inversée : {chaine_inversee}")

Sortie :

Inversion avec une boucle while
Chaîne originale : Python
Chaîne inversée : nohtyP

Explication : On utilise un index décroissant pour accéder aux caractères de la fin vers le début.

Méthode 3 : Inversion avec l'opérateur de tranchage (slicing)

def inverser(chaine):
    return chaine[::-1]

chaine = "Let's guru99"
print(f"Inversion par slicing")
print(f"Chaîne originale : {chaine}")
print(f"Chaîne inversée : {inverser(chaine)}")

Sortie :

Inversion par slicing
Chaîne originale : Let's guru99
Chaîne inversée : 99urug s'teL

Explication : La syntaxe [::-1] crée une copie de la chaîne avec un pas de -1 (parcours inverse). C'est la méthode la plus pythonique et la plus performante.

Méthode 4 : Inversion avec la fonction reversed()

def inverser(chaine):
    return "".join(reversed(chaine))

chaine = "guru99"
print(f"Inversion avec reversed()")
print(f"Chaîne originale : {chaine}")
print(f"Chaîne inversée : {inverser(chaine)}")

Sortie :

Inversion avec reversed()
Chaîne originale : guru99
Chaîne inversée : 99urug

Explication : reversed() renvoie un itérateur inverse, que join() recombine en chaîne.

Méthode 5 : Inversion par récursivité

def inverser(chaine):
    if len(chaine) == 0:
        return chaine
    else:
        return inverser(chaine[1:]) + chaine[0]

chaine = "I love guru99"
print(f"Inversion par récursivité")
print(f"Chaîne originale : {chaine}")
print(f"Chaîne inversée : {inverser(chaine)}")

Sortie :

Inversion par récursivité
Chaîne originale : I love guru99
Chaîne inversée : 99urug evol I

Explication : La fonction s'appelle elle-même en retirant le premier caractère à chaque appel, puis l'ajoute à la fin au retour de la récursion.

Conclusion

Python

  1. Contrôle de boucles Python : break, continue et pass expliqués avec exemples pratiques
  2. Maîtriser les exceptions personnalisées Python : guide pratique
  3. Fondamentaux des dictionnaires Python : Clés, valeurs et accès
  4. Maîtriser la gestion d'exceptions Python : utiliser try, except, finally et raise efficacement
  5. Maîtriser le débogage Python : techniques efficaces et meilleures pratiques
  6. Vérifier votre version Python sur Linux, macOS et Windows : Guide rapide
  7. Maîtriser le décorateur @property de Python : getters et setters propres et compatibles
  8. Maîtriser le métaprogrammation Python : Techniques avancées de métaclasses
  9. Maîtriser les types de données Python : Guide pratique