Python - Immutabilità delle stringhe

In Python, i tipi di dati stringa non sono modificabili. Ciò significa che un valore di stringa non può essere aggiornato. Possiamo verificarlo provando ad aggiornare una parte della stringa che ci porterà a un errore.

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

Quando eseguiamo il programma sopra, otteniamo il seguente output:


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

Possiamo ulteriormente verificarlo controllando l'indirizzo della posizione di memoria della posizione delle lettere della stringa.

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

Quando eseguiamo il programma sopra, otteniamo il seguente output. Come puoi vedere sopra a e un punto nella stessa posizione. Anche N e N indicano anche la stessa posizione.

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