ошибка программы python elif else if

def Game(): # Story Background print "You decide to take a walk outside one night when you come accross a corn field." print "You notice an omnious sound coming from the other side of the maze." Enter = raw_input("Do you enter? (yes or no)") if Enter == "Yes" or "yes": print "You walk into the maze and the corn is so thick together you cant push through" print "so you walk down the isle surrounded by corn and you come to an intersection." turn = raw_input("Which way do you go? (Left, Right, Forward, Leave)") if turn == "Left" or "left": print "After you turn left you come accross a dead end and you are forced to turn around." print "You return to the intersection." turn2 = raw_input("Which way do you go? (Left, Forward, Leave)") if turn2 == "Forward" or "forward": print "you walk on deeper into the maze when you come to a left turn" print "you turn left and come accross a crossroad." turn3 = raw_input("Which way do you go? (Left, Right, Leave)") if turn3 == "Right" or "right": print "You come to a dead end and are forced to turn around" turn4 = raw_input("Which way do you go? (Forward, Leave)") if turn4 == "Forward" or "forward": print "You walk to a hole in the ground stopping you from moving any further" print "the hole seems to be filled with snakes so you cant go through it." print "you are forced to leave the maze." elif turn4 == "leave" or "Leave": print "you leave the maze and return home." else: print "you walk into a wall and go into an irreversable coma" elif turn3 == "Left" or "left": print "You walk to a hole in the ground stopping you from moving any further" print "the hole seems to be filled with snakes so you cant go through it." print "you are forced to leave the maze." print "you leave the maze and return home." else: print "you walk into a wall and go into an irreversable coma" elif turn2 == "Left" or "left": print "you turn Left into the maze when you come by a strange man laying on the ground." man == raw_input("What do you do? (Help, keep going)") if man == "Help" or "help": print "you help the man up and he knocks you out cold" print "you wake back up in your bed at home" elif man == "keep going" or "Keep going": print "You leave the man behing after stealing his wallet." print "YOU HAVE REACHED THE END OF THE MAZE" print "You realize the noise was the sound of a old farmer milking a cow." print "The farmer nags at you for coming on private property." else: print "you walk into a wall and go into an irreversable coma" elif turn2 == "leave" or "Leave": print "you leave the maze and return home." else: print "you walk into a wall and go into an irreversable coma" elif turn == "Forward" or "forward": print "you move forward into the maze when you come by a strange man laying on the ground." man == raw_input("What do you do? (Help, keep going)") if man == "Help" or "help": print "you help the man up and he knocks you out cold" print "you wake back up in your bed at home" elif man == "keep going" or "Keep going": print "You leave the man behing after stealing his wallet." print "YOU HAVE REACHED THE END OF THE MAZE" print "You realize the noise was the sound of a old farmer milking a cow." print "The farmer nags at you for coming on private property." elif turn == "leave" or "Leave": print "you leave the maze and return home." else: print "you walk into a wall and go into an irreversable coma" elif turn == "Right" or "right": print "After you turn right you come into a left turn only path." print "You turn left and you come to a crossroad." turn = raw_input("Which way do you go? (Left, Right, Leave)") if turn == "Right" or "right": print "You come to a dead end and are forced to turn around" turn = raw_input("Which way do you go? (Forward, Leave)") if turn == "Forward" or "forward": print "You walk to a hole in the ground stopping you from moving any further" print "the hole seems to be filled with snakes so you cant go through it." print "you are forced to leave the maze." else: print "you walk into a wall and go into an irreversable coma" elif turn == "Forward" or "forward": print "You walk to a hole in the ground stopping you from moving any further" print "the hole seems to be filled with snakes so you cant go through it." print "you are forced to leave the maze." else: print "you walk into a wall and go into an irreversable coma" elif turn == "Leave" or "leave": print "you leave the maze and return home." else: print "you walk into a wall and go into an irreversable coma" elif Enter == "No" or "no": print "You walk on into the depths of the night and are robbed by a couple street thugs." else: print "you walk into a wall and go into an irreversable coma" def main(): Game() main() 

когда я использую эту программу, независимо от того, что я вхожу в оболочку python, она говорит одно и то же снова и снова. она не принимает операторы raw_input в контекст и помещает их в операторы if

2 Solutions collect form web for “ошибка программы python elif else if”

 if Enter == "Yes" or "yes": 

Это не так or работает. Это интерпретируется как if (Enter == "Yes") or "yes": В python непустые строки всегда верны, поэтому все утверждения if подобные этому, будут истинными. Я бы предложил что-то вроде

 if Enter.lower() == "yes": 

который заботится обо всех комбинациях верхнего / нижнего регистра.

Ваш синтаксис здесь неправильный:

 if Enter == "Yes" or "yes": 

Это условие всегда будет истинным. Enter == "Yes" сначала оценивается. Если логическое представление False , будет рассмотрено булево представление "yes" . bool("yes") всегда True .

Попробуйте сделать что-то вроде:

 if Enter in ('Yes', 'yes'): 

Или:

 if Enter.lower() == 'yes': 
  • Pythonic способ проверить, что длины партий списков одинаковы
  • Как сравнить элементы в списке списков и сравнить ключи в списке списков в Python?
  • Проверьте, все ли значения в итерируемой форме на питоне
  • Как можно упростить это очень длинное if-заявление?
  • Pig Latin Translator
  • Inline условно между более чем двумя значениями
  • Python Если тогда стиль Else при получении значений из Dicts
  • Слишком много утверждений if
  •  
    Interesting Posts for Van-Lav

    Преобразование типа Python

    Поиск элегантной итерации кубиков Python

    Pygame перетащить фоновое изображение

    Выполнение действия при неожиданном выходе python

    Те же элементы перечисления обертывают константы разных типов в SWIG> 2.0.1

    Преимущества os.path.splitext над регулярным .split?

    Ожидание данных из одной задачи во второй независимо запланированной задаче

    Запись в CSV из списка, write.row, кажется, останавливается в странном месте

    Pandas Dataframe: разбиение нескольких столбцов на несколько столбцов

    Выполнение операторов в 'parallel'

    3D-экстраполяция в python (в основном, scipy.griddata распространяется на экстраполяцию)

    python: игнорирование ведущих «>>>» и «…» в интерактивном режиме?

    Как запретить пользователям импортировать x из подмодуля, когда он отображается в родительском объекте, используя __all__

    Python Celery против библиотеки Threading для запуска асинхронных запросов

    самое отрицательное значение для python

    Python - лучший язык программирования в мире.