Python-文字列の不変性

Pythonでは、文字列のデータ型は不変です。つまり、文字列値は更新できません。これは、エラーの原因となる文字列の一部を更新しようとすることで確認できます。

# Can not reassign 
t= "Tutorialspoint"
print type(t)
t[0] = "M"

上記のプログラムを実行すると、次の出力が得られます-


        t[0] = "M" TypeError: 'str' object does not support item assignment 
      

文字列の文字の位置のメモリロケーションアドレスをチェックすることで、これをさらに確認できます。

.
x = 'banana'
for idx in range (0,5):
    print x[idx], "=", id(x[idx])

上記のプログラムを実行すると、次の出力が得られます。あなたが上で見ることができるように、そして同じ場所へのポイント。また、NとNも同じ場所を指しています。

b = 91909376
a = 91836864
n = 91259888
a = 91836864
n = 91259888