1
resposta

[Faça como eu fiz]: filtrando números pares

def contar_pares():
    while True:
        try:
            numeros = input("Digite os números separados por espaço ou 0 para finalizar: ").split(' ')
            if numeros == ["0"]:
                print("Encerrado")
                break
            numeros_pares = list(filter(lambda x : int(x) % 2 == 0, numeros))
            print(f"Numeros pares: {tuple(numeros_pares)}")
        except ValueError:
            print("Valor invalido. Digite novamente!")

def main():
    contar_pares()

main()
1 resposta

Oi, Luan! Como vai?

Seu código está bem organizado e a forma como usou filter com lambda para identificar números pares deixa a solução clara e objetiva. Também foi uma boa prática tratar exceções para evitar erros durante a execução.

Uma dica interessante para o futuro é usar list comprehension para filtrar números pares, deixando o código mais conciso:


numeros = [int(n) for n in input("Digite os numeros separados por espaco: ").split() if int(n) % 2 == 0]
print(numeros)

Esse código lê os números, converte para inteiro e já filtra apenas os pares em uma única linha.

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