1
resposta

[Dúvida] Esta conforme ?

Sem POO

def converter_para_int(telefones):
    nova_lista = []
    for telefone in telefones:
        nova_lista.append(int(telefone))
    return nova_lista


def verificar_conversao(telefones):
    for telefone in telefones:
        if type(telefone) != int:
            return False
    return True

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

telefones_convertidos = converter_para_int(telefones)

if verificar_conversao(telefones_convertidos):
    print("Todos os números foram convertidos corretamente!")

Com POO

class ConversorTelefone:
    def __init__(self, telefones):
        self.telefones = telefones

    def converter_para_int(self):
        nova_lista = []
        for telefone in self.telefones:
            nova_lista.append(int(telefone))
        self.telefones = nova_lista

    def verificar_conversao(self):
        for telefone in self.telefones:
            if not isinstance(telefone, int):
                return False
        return True


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

conversor = ConversorTelefone(telefones)
conversor.converter_para_int()

if conversor.verificar_conversao():
    print("Todos os números foram convertidos corretamente!")
else:
    print("Erro na conversão dos números.")
1 resposta

Oi, Samuel. Como vai?
Agradeço por compartilhar seu codigo com a comunidade Alura.

Chamou atenção a organização das duas abordagens, sem POO e com POO, deixando claro como a mesma ideia pode ser aplicada de formas diferentes. Uma dica interessante para o futuro, se você quiser, é usar o metodo map(), que ajuda a aplicar uma função em todos os itens de uma lista de forma mais simples.


telefones = ["11987654321", "21912345678"]
telefones_convertidos = list(map(int, telefones))
print(telefones_convertidos)

Esse código converte todos os valores da lista para inteiro usando uma única linha.

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