Maison >développement back-end >Tutoriel Python >Pourquoi les méthodes de chaîne Python ne modifient-elles pas la chaîne d'origine ?

Pourquoi les méthodes de chaîne Python ne modifient-elles pas la chaîne d'origine ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-20 13:42:10760parcourir

Why Don't Python String Methods Modify the Original String?

Pourquoi les méthodes de chaîne ne modifient pas les chaînes en Python

Les chaînes Python sont immuables, ce qui signifie qu'elles ne peuvent pas être directement modifiées. Cela peut prêter à confusion lors de l'utilisation de méthodes de chaîne qui semblent modifier le contenu d'une chaîne, telles que .replace ou .strip.

Considérez l'exemple suivant :

X = "hello world"
X.replace("hello", "goodbye")

Après avoir exécuté ce code , la valeur de X reste "bonjour tout le monde" au lieu du "au revoir tout le monde" attendu. En effet, .replace ne modifie pas la chaîne d'origine, mais renvoie à la place une nouvelle chaîne avec les remplacements appliqués. Pour réellement modifier la valeur de X, vous devez attribuer la sortie de .replace à X :

X = X.replace("hello", "goodbye")

Ce comportement s'applique à toutes les méthodes de chaîne Python qui modifient le contenu de la chaîne, notamment :

  • .replace
  • .strip
  • .translate
  • .lower/.upper
  • .join

Pour utiliser les modifications apportées par ces méthodes, vous devez toujours penser à attribuer leur sortie à la chaîne d'origine ou une nouvelle variable.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn