~/questoes/python
Casting é a conversão explícita de um valor de um tipo de dado para outro, usando funções como int(), str() e float(). Isso permite transformar, por exemplo, um texto em número ou um número em texto, sempre que necessário no seu programa.
A alternativa C está correta porque casting é justamente a conversão deliberada de um tipo para outro. Quando você escreve int('42'), está convertendo uma string em inteiro. Isso é diferente de mudar nomes de variáveis ou deixar Python decidir automaticamente.
Mudar o nome de uma variável não é casting. Você pode renomear uma variável sem alterar seu tipo de dado. Casting é sobre transformar o tipo do valor, não o nome da variável.
Deletar e recriar variáveis é um processo manual desnecessário. Casting faz a conversão de forma direta e eficiente, sem precisar remover nada. Além disso, não é isso que Python faz nos bastidores.
Exato! Casting é converter explicitamente um valor de um tipo para outro usando funções nativas de Python. Exemplos: int('100'), str(42), float('3.14'). Você controla a conversão.
Python até tem type inference (deduz tipos automaticamente em algumas situações), mas casting é o oposto: é você dizendo explicitamente qual tipo quer. Casting é sempre intencional e controlado.