Странный SyntaxError с оператором if в python 3? - PullRequest
0 голосов
/ 12 ноября 2019

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

Я пытался использовать целые числа и строки, но ничего не работает. Я не уверен что делать.

while monster.enemyhealth>0:
    print ("[Your Turn]")
    print ("(1) Smash")
    print ("(2) "+player.secondary_attack)
    print ("(3) "+player.tertiary_attack)
    print ("(4) Backpack")
    print ("(5) Escape Battle")
    battleinput=int(input(">>>")

    if battleinput==1:
        monster.enemyhealth-player.primary_attack.damage=monster.enemyhealth
        print ("You did "+smash.damamge+" to the monster!")
        player.powerpoints-player.primary_attack.powerpointcost=player.powerpoints
        player.health-monster.attackpower=player.health
        print ("The monster did "+str(monster.attackpower)+" to you!")

И вот в чем ошибка:

File main.py, line 140
if battleinput==1:
                ↑
SyntaxError: invalid syntax

Я ожидаю, что она просто пройдет и программа запустится нормально.

1 Ответ

0 голосов
/ 12 ноября 2019

Вы использовали фиксированные пробелы для отступа?

while conditions:
    statements
    if conditions:
        statements

кажется, что у вас нет истинного отступа при использовании , если

...