Oi, Natalia! Como vai?
A função converter_telefones utiliza list e map para percorrer a lista de telefones e aplicar a conversão para int de forma direta e eficiente. Já a função verifica_tipos usa um laço for para checar cada número com isinstance, garantindo que todos os valores foram convertidos corretamente. Esse cuidado com a validação é um ótimo hábito de programação.
Uma dica valiosa para o futuro é tratar possíveis erros durante a conversão usando try/except. Isso evita que o programa quebre caso algum valor inválido apareça na lista, tornando o código mais robusto:
def converter_telefones(lista):
nova_lista = []
for item in lista:
try:
nova_lista.append(int(item))
except:
print("valor invalido encontrado")
return nova_lista
Nessa versão, o bloco def converter_telefones percorre cada item da lista e tenta realizar a conversão para int. Caso o valor não seja compatível, o erro é capturado e exibido sem interromper a execução do programa. Assim, a variável convertidos sempre receberá um retorno seguro da função, independentemente dos dados de entrada.
Esse tipo de verificação é especialmente útil quando trabalhamos com dados externos, como listas de telefones vindas de formulários ou arquivos, em que nem sempre podemos garantir a qualidade dos valores recebidos.
Você já teve alguma situação em que um dado inesperado causou um erro na sua aplicação? E como você lidou com isso?
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!