How to print a message saying that the searched element was not found in the list? Python 3

Asked

Viewed 63 times

1

Hello, people! How do I print a message on the screen saying that the keyboard input is not in the list? Note: If the keyboard input is in the list (for example if the user type 'password'), the program must print the position of the element in the list. I thought to add an 'Else' after the 'if' only so the program will print the message saying that the element is not in the list for each check, that is, it will print several "Not in" each time it checks that the element is not in the list, but I want him to print only once that message.

Follows the code:

senhas_comuns = ['qwerty', 'password', 'google', 'starwars', 'mrrobot', 'anonymous', 'mypassword', 'minhasenha', 'senha', 'admin', 'abcd', 'master', 'batman', 'superman', 'dragonball']
print('Vamos ver se você consegue acertar alguma das senhas mais usadas sem números.')
entrada = input('Chute: ')

#marcador da posição.
posicao = -1
for cadaSenha in senhas_comuns:
posicao += 1
if entrada == cadaSenha:
    print('Você acertou! A senha ' + entrada + ' está na posição ' + str(posicao) + ' da lista.')

1 answer

1

You could do everything in a much more succinct way, see:

senhas_comuns = ['qwerty', 'password', 'google', 'starwars', 'mrrobot', 'anonymous', 'mypassword', 'minhasenha', 'senha', 'admin', 'abcd', 'master', 'batman', 'superman', 'dragonball']
print('Vamos ver se você consegue acertar alguma das senhas mais usadas sem números.')
entrada = input('Chute: ')

if entrada in senhas_comuns:
    posicao = senhas_comuns.index(entrada)
    print('Você acertou! A senha ' + entrada + ' está na posição ' + str(posicao) + ' da lista.')
else:
    print('Você errou')

I used the language "in" operator to check if a certain element belongs to the list. If it does, I use the "index" function of the lists to pick up the index the element is in.

Browser other questions tagged

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