Junior — Middle
Qual é a característica da imutabilidade das strings em Python e por que elas não podem ser alteradas após serem criadas?
sobes.tech IA
Resposta da IA
No Python, as strings são objetos não modificáveis (immutable). Isto significa que, uma vez criada uma string, o seu conteúdo não pode ser alterado.
Razões para esta característica:
- Otimização de memória e desempenho. A imutabilidade permite a internização de strings — armazenar uma única cópia de strings iguais na memória, o que economiza recursos.
- Segurança e previsibilidade. Se as strings não podem ser alteradas, isso previne alterações acidentais ou indesejadas nos dados, especialmente ao passar strings entre funções.
Por exemplo, ao tentar modificar diretamente um carácter de uma string:
s = "hello"
s[0] = 'H' # Erro TypeError: 'str' object does not support item assignment
Para alterar uma string, é necessário criar uma nova:
s = "hello"
s = 'H' + s[1:] # Agora s == "Hello"
Assim, as strings em Python são implementadas como objetos imutáveis para melhorar a eficiência e a segurança do código.