2013-07-18 144 views
-2

我一直在這個特定的「else」上收到語法錯誤。我不知道問題是什麼。如果它還不夠清楚,那就是第16行的其他內容。我剛剛在幾天前啓動了python。所以,請不要太緊張掌心。python中的IF-ELSE語句的else語法錯誤

W = 1 
while W == 1: 
    if MH > 0: 
     PlayerInput = input("Attack, Defend, or Run('1','2',or'3'):") 
     if PlayerInput == "3": 
      W = 0 
     elif PlayerInput == "1": #Attack 
      Atk = randint(1,4) 
      if Atk == 1: 
       Atk = randint(1,4) 
       if Atk == 1: 
        print ("Miss") 
       else: 
        MH = MH-((1/2)*FightingAbility)   
        print ("Enemy lost %s Health" % ((1/2)*FightingAbility) 
      else:<<<<---------[[This else is giving me trouble]] 
       MH = MH-Fightingability 
       print ("Enemy lost %s Health" % (FightingAbility)) 
     elif PlayerInput == "2": #Defend 
      if S > FightingAbility: #Enemy is stronger 
       Def = randint(1,4) 
       if Def == 1: 
        Def = randint(1,4) 
        if Def == 1: 
         print ("The %s Missed" % (E)) 
        else: 
         Health = Health-((1/2)*S)   
         print ("You lost %s Health" % ((1/2)*S) 
       else: 
        Health = Health-S 
        print ("You lost %s Health" % (S)) 
      elif S <= FightingAbility: #Enemy is weaker 
       Def = randint(1,4) 
       if Def == 1: 
        Def = randint(1,4) 
        if Def == 1: 
         Health = Health-S 
         print ("You lost %s Health" % (S)) 
        else: 
         Health = Health-((1/2)*S)   
         print ("You lost %s Health" % ((1/2)*S) 
       else: 
        print ("The %s Missed" % (E)) 
    else: 
     Win=1 
     pass 
+0

我相信你已被放棄投票,提供簡短的代碼示例。在發佈S.O之前,您應該將代碼簡化爲出現問題的最簡單形式。在這種情況下,這樣做可能會幫助您自己解決問題。 –

回答

2

print線(else之前)不具有一個右括號。

print ("Enemy lost %s Health" % ((1/2)*FightingAbility)