Black November

ATÉ 50% OFF

TÁ ACABANDO!

0 dias

0 horas

0 min

0 seg

2
respostas

[Projeto] Validando um CPF

cpf = input('Digite seu CPF: ')
cpf = cpf.replace('.', '').replace('-', '').strip()  # remove . e - | também remove os espaços

validacao = 'sim'

for numero in cpf:
    if not numero.isnumeric():
        validacao = 'não'

if validacao == 'sim':
    if len(cpf) != 11:
        print('O CPF deve ter exatamente 11 dígitos.')
    else:
        print('CPF válido.')
else:
    print('Erro: O CPF deve conter apenas números.')

Matricule-se agora e aproveite até 50% OFF

O maior desconto do ano para você evoluir com a maior escola de tecnologia

QUERO APROVEITAR
2 respostas

Olá, Lucas, como vai?

Seu código está funcional e cumpre bem a proposta do exercício. A lógica que você aplicou para limpar o CPF e validar se contém apenas números está clara e direta. Além disso, o uso de replace e strip para remover caracteres indesejados é uma boa escolha para tratar entradas comuns de CPF com pontos e traços.

Uma pequena melhoria seria simplificar a verificação de números utilizando cpf.isdigit() em vez de percorrer cada caractere com o for. Isso deixa o código mais limpo e fácil de entender. Por exemplo:

cpf = input('Digite seu CPF: ')
cpf = cpf.replace('.', '').replace('-', '').strip()

if not cpf.isdigit():
    print('Erro: O CPF deve conter apenas números.')
elif len(cpf) != 11:
    print('Erro: O CPF deve ter exatamente 11 dígitos.')
else:
    print('CPF válido.')

Continue compartilhando seus exercícios. O fórum está à disposição para acompanhar seu progresso e ajudar quando precisar.

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

Oi Mike, estou bem e você?

Muito obrigado pelo feedback!