ホームページ >バックエンド開発 >Python チュートリアル >Python の文字列メソッドが元の文字列を変更しないのはなぜですか?

Python の文字列メソッドが元の文字列を変更しないのはなぜですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-20 13:42:10803ブラウズ

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

Python で文字列メソッドが文字列を変更しない理由

Python 文字列は不変です。つまり、直接変更することはできません。 .replace や .strip など、文字列の内容を変更するように見える文字列メソッドを使用する場合、これは混乱を招く可能性があります。

次の例を考えてみましょう。

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

このコードの実行後の場合、X の値は、予期された「goodbye world」ではなく、「hello world」のままになります。これは、 .replace は元の文字列を変更せず、代わりに置換が適用された新しい文字列を返すためです。 X の値を実際に変更するには、.replace の出力を X に割り当てる必要があります:

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

この動作は、文字列の内容を変更するすべての Python 文字列メソッドに適用されます。含む:

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

これらのメソッドによって加えられた変更を使用するには、常に次のことを忘れないでください。出力を元の文字列または新しい変数に割り当てます。

以上がPython の文字列メソッドが元の文字列を変更しないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。