Não entendi direito o lance da imutabilidade, no trecho de código abaixo não estou alterando a variavel string chute?
chute = chute.strip()
Não entendi direito o lance da imutabilidade, no trecho de código abaixo não estou alterando a variavel string chute?
chute = chute.strip()
Agnaldo, tudo bem?
No caso a imutabilidade está relacionada à chamada do método. Quando você tem o comando abaixo:
chute.strip()
Você não tem a alteração da variável chute e sim cria um novo valor não relacionado à variável chute. No seu caso a variável não foi alterada pela chamada do método, mas pela atribuição do valor gerado pela chamada do método à variável e isso fez com que ela tivesse seu valor alterado. Em resumo:
Isso muda o valor da variável chute:
chute = chute.strip()
Mas isso não muda o valor da variável chute:
chute.strip()
Perfeita a explicação Ronaldo, clareou!
Obrigado!