Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

conversor de tipos

eu não sabia fazer a list comprehension então passei séculos tentando fazer cada parte manualmente pra que eu pudesse ver o que estava rolando kkkkkk

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

def coverter_inteiro(telefones):
    lista = []

    for telefone in telefones:
        num = int(telefone)
        lista.append(num)

    return lista

def check_in(lista):
    for num in lista:
        if not isinstance (num, int):
            return('Erro na conversão')

    return('Conversão completa')

telefones_convertidos = coverter_inteiro(telefones) 
print(check_in(telefones_convertidos))
1 resposta

Oi, Nathã. Tudo bem com você?

Gostei de você ter compartilhado o processo que usou para chegar na solução. Mesmo sem usar list comprehension, a sua implementação atende à lógica proposta na atividade. Na função coverter_inteiro, você percorre cada telefone com o for, converte o valor usando int() e adiciona o resultado em uma nova lista. Depois, na função check_in, você utiliza isinstance(num, int) para verificar se cada elemento realmente é um inteiro. A lógica de retornar uma mensagem de erro assim que encontrar um valor que não seja int também funciona bem para essa validação.

Uma coisa interessante para observar é que você não precisa necessariamente conhecer list comprehension para resolver o exercício. A estrutura com for que você utilizou é totalmente válida e, inclusive, pode ser uma forma mais fácil de entender o que está acontecendo com cada elemento antes de aprender uma sintaxe mais compacta. Depois, quando você se sentir confortável, pode comparar essa solução com algo como [int(telefone) for telefone in telefones] e perceber que as duas fazem essencialmente a mesma conversão.

Parabéns pelo exercício, Nathã, e principalmente por ter experimentado diferentes formas de chegar ao resultado. Continue compartilhando seus códigos e seu processo de aprendizagem por aqui. O fórum está à disposição.

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