1
resposta

[Sugestão] Minha Solução

def cadastro(nome):
import re

padrao = r'^[A-Z][a-z]+( [A-Z][a-z]+)+$'
 # Explicação do padrão:
 # ^ - Início da string
 # [A-Z] - Primeira letra maiúscula
 # [a-z]+ - Uma ou mais letras minúsculas
 # ( [A-Z][a-z]+)+ - Um ou mais grupos de um espaço seguido por uma letra maiúscula e uma ou mais letras minúsculas
 # $ - Fim da string
 
if re.fullmatch(padrao, nome):
    print('Nome válido.')
else:
    print('Nome inválido. Certifique-se de que cada nome começa com letra maiúscula e não há números ou caracteres especiais.')

cadastro(input('\nDigite seu nome completo: '))

1 resposta

Oi! Como vai?

Gostei de como você usou expressões regulares para validar os nomes, ficou bem estruturado e claro de entender. A forma como explicou cada parte do padrão também ajuda bastante na compreensão.

Uma dica interessante para o futuro é usar o método strip() para remover espaços extras no início e no final da string antes de validar. Veja este exemplo:


nome = input("Digite seu nome completo: ").strip()
print(nome)

Esse código garante que espaços adicionais não atrapalhem a validação.

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