1
resposta

[Projeto] Conversor de números para int

def converter(telefones): 
    lista = []
    for telefone in telefones:
        try:
            lista.append(int(telefone))
        except:
            lista.append(None)
    return lista

def checar_conversao(telefones) -> bool:
    for telefone in telefones:
        if telefone == None:
            return False
    return True


telefones = ["11987654321", "21912345678", "31987654321", "11911223344"] 

telefones_int = converter(telefones)
if checar_conversao(telefones_int):
    print("Todos os números foram convertidos corretamente! ")
else:
    print("Erro de conversão!")
1 resposta

Olá, Paulo! Como vai?

Parabéns pela resolução da atividade!

Vi que você explorou a função para converter telefones com Python, utilizou muito bem o tratamento de exceções para evitar erros e ainda compreendeu a importância da validação para garantir consistência nos dados.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é aplicar list comprehension junto com try/except. Assim:

def converter(telefones):
    return [int(t) if t.isdigit() else None for t in telefones]

Isso faz a conversão de forma mais compacta e clara.

Alguns materiais podem estar em inglês, mas é possível compreendê-los usando o recurso de tradução de páginas do próprio navegador.

Ah, uma pergunta: Você acha mais interessante manter a conversão detalhada com try/except dentro do loop ou prefere simplificar com list comprehension para deixar o código mais enxuto?

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!