Что происходит с моим утверждением «если-еще»? (Python 3.3)

Я пишу условные заявления для проекта биллинговой программы. Я немного знаком с начинающим, но я приветствую этот вызов. В любом случае, я планирую запустить программу с запросом имени пользователя и пароля. Так что это мой первый код для программы.

print ("Hello and welcome to Billing Pro, please enter your username and password to access the database.")

username = input ("Enter username:")

if username == "cking" or "doneal" or "mcook":
  print ("Valid username.")
else:
  print ("Invalid username. Please try again.") 


password = input ("Enter password:")

if password == "rammstein1" or "theory1" or "tupac1":
  print ("Valid password. User has been verified.")
else:
  print ("Invalid password. Access denied.")

Теперь сначала, когда я запустил этот код, если я набрал что-то кроме трех вариантов имени пользователя, Python напечатал строку «неверное имя пользователя». По какой-то причине сейчас он печатает «действительное имя пользователя», а затем продолжает вводить пароль. Кроме того, если я введу что-либо, кроме выбора паролей, он всегда зачитает подсказку «действительный пароль».

Кроме того, как я могу повторить запрос имени пользователя, когда пользователь вводит что-то, кроме трех вариантов? Должен ли я использовать оператор while вместо if-else или можно ли поместить оператор while в конец оператора if-else для повторного запуска запроса?

О, и я знаю, что вы не можете сказать, потому что мое дерьмовое форматирование в вопросе, но я использовал правильные отступы для самого сценария.

Ответы на вопрос(4)

Ваш ответ на вопрос