Comparing a data entry to a list, regardless of whether the word starts with a capital letter

Asked

Viewed 46 times

2

I would like to know how to perform this comparison without taking into account if the month typed is capitalized or lowercase, since the program only works if you type in lowercase.

prompt = "Digite o mês de seu nascimento (digite exit para sair): "
active = True
meses = ['janeiro', 'fevereiro', 'março', 'abril', 'maio','junho', 'julho',
'agosto', 'outubro', 'novembro', 'dezembro']
while active:
    mensagem = input(prompt)
    if mensagem == "exit":
        active = False
    elif mensagem in meses:
       print("Você nasceu em %s" %(mensagem.title()))
    else:
        print("Este não é um mês válido, digite novamente.")

In advance I thank you for your attention.

1 answer

0


Make the comparison by also transforming what you typed into minuscule letter:

prompt = "Digite o mês de seu nascimento (digite exit para sair): "
meses = ['janeiro', 'fevereiro', 'março', 'abril', 'maio','junho', 'julho',
'agosto', 'outubro', 'novembro', 'dezembro']
while True:
    mensagem = input(prompt).lower() # alterei aqui
    if mensagem == "exit":
       break
    elif mensagem in meses:
       print("Você nasceu em %s" %(mensagem.title()))
    else:
       print("Este não é um mês válido, digite novamente.")

I took the opportunity to take the active, works perfectly without it, has to set a break in the loop while, which in this case is when the person type "Exit"

  • Thank you for the reply. I am a beginner in programming and your help was of great value to me.

  • Opa already implemented and worked perfectly. Vlw.

  • You’re welcome @Carlosferreira, I’m glad you solved

Browser other questions tagged

You are not signed in. Login or sign up in order to post.