Maison > développement back-end > Tutoriel Python > Pourquoi les méthodes de chaîne de Python comme « .replace() » ne modifient-elles pas la chaîne d'origine ?

Pourquoi les méthodes de chaîne de Python comme « .replace() » ne modifient-elles pas la chaîne d'origine ?

Mary-Kate Olsen
Libérer: 2024-12-26 06:49:09
original
616 Les gens l'ont consulté

Why Don't Python's String Methods Like `.replace()` Modify the Original String?

Pourquoi les méthodes de chaîne comme .replace() ne modifient pas les chaînes directement dans Python

Lorsque vous essayez de modifier une chaîne à l'aide de méthodes comme . replace() ou .strip() en Python, vous constaterez peut-être que la chaîne d'origine reste inchangée. Ce comportement découle de l'immuabilité des chaînes dans le langage.

Les objets immuables, comme leur nom l'indique, ne peuvent pas être modifiés sur place. Au lieu de cela, appeler une méthode sur un objet immuable renvoie un nouvel objet avec les modifications souhaitées. Par exemple, en Python :

X = "hello world"
new_string = X.replace("hello", "goodbye")
Copier après la connexion

Dans le code ci-dessus, .replace() renvoie une nouvelle chaîne avec le remplacement effectué. Cependant, la variable X d'origine contient toujours la chaîne non modifiée « hello world ». Pour mettre à jour la valeur de X, vous devez attribuer le résultat de l'appel de méthode :

X = X.replace("hello", "goodbye")
Copier après la connexion

Ce principe s'applique à toutes les méthodes de chaîne en Python qui modifient le contenu d'une chaîne, notamment :

  • .replace()
  • .strip()
  • .translate()
  • .lower()
  • .upper()
  • .join()
  • .capitalize()
  • .casefold()

Par conséquent, il est indispensable d'attribuer la sortie de ces méthodes à une nouvelle variable ou à la même variable si vous souhaitez conserver la chaîne modifiée.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal