Ваш лог c просто немного отключен. Вы забыли повторить запрос, и ваше условие неверно.
Условие:
power == "strength" or "pyrokenisis" or "speed"
проверяет, равна ли переменная мощности значению или если любая из двух других строк "правда". Это может помочь заключить в скобки:
(power == "strength") or ("pyrokenisis") or ("speed")
Вместо этого вы должны проверить:
power == "strength" or power == "pyrokenisis" or power == "speed"
или, возможно, использовать in
для кортежа:
power in ("strength", "pyrokenisis", "speed")
Таким образом, ваш окончательный код может выглядеть примерно так:
while True:
power = input("pick a super power: strength, pyrokenisis, or speed--- ")
if power in ("strength", "pyrokenisis", "speed"):
print("nice")
break
else:
print("try again")
Обратите внимание, что я переместил подсказку внутри while
l oop, чтобы пользователь мог фактически повторить попытку для каждого l oop , Оператор if
также использовался для управления потоком программы.