Pythonの不変オブジェクトは、その概念の後でその値を変更できないことを意味しますか?その場合、その値を変更しようとするとどうなりますか。
私の疑問を例を挙げて説明してみましょう。
たとえば、StringオブジェクトS
を値で初期化しました"Hello World"
。
S = 'Hello World'
次に、行を入力しました。
S = 'Hello Human'
ですから、通訳に聞いてみると、Sの値はです"Hello Human"
。明らかに今、「S」は新しい値を持っています。
値はどのように変化しましたか?Pythonは古い文字列オブジェクトを破棄し、新しい値で新しいオブジェクトを作成しましたか?または、古いオブジェクトの値を変更しただけですか。これは、文字列オブジェクトが不変であるという事実と関係がありますか?もしそうなら、可変オブジェクトはどのように動作しますか?