我一直在一個叫做https://repl.it的網站上編碼。 PEP8在最後一行返回了一個錯誤:E901或TokenError:EOF在多行聲明上repl.it
E901, or TokenError: EOF in multi-line statement`.
我試圖重寫部分,重做縮進和重命名變量。
-EDIT- 我檢查了縮進和if語句,所以這裏是新的代碼。它仍然提出相同的問題。請注意,我並不擅長代碼,可能不會明白你的意思。我也會嘗試在代碼中添加註釋。
from random import randint
from time import sleep
advList = ["Crawl", "Walk", "Run", "Sprint"]
atkList = ["[A] Punch", "[B] Kick", "[C] Magic"]
restart = 1
myHp = 50
zomHp = 50
battle = 50
#Game Over Screen
if myHp <= 0:
print("YOU DIED")
print("GAME OVER")
quit()
#Endless Game Function
for i in range(0, reset):
#Traveling Loop
while battle > 5:
print(advList)
trv = str(input("How would you like to advance?"))
if trv == advList[0]:
sleep(8)
myHp = myHp + 10
battle = randint(0, 40)
if trv == advList[1]:
sleep(4)
myHp = myHp + 5
battle = randint(0, 30)
if trv == advList[2]:
sleep(2)
myHp = myHp + 2
battle = randint(0, 20)
if trv == advList[3]:
sleep(1)
myHp = myHp + 1
battle = randint(0, 10)
#Max Health Cap
if myHp >= 50:
myHp = 50
print("My Hp: ", myHp)
print('')
#Battle Sequence
if battle <= 5:
print ("A zombie approaches!!!")
sleep(1)
while battle <= 5:
print (atkList)
atk = str(input("How do you attack?"))
#Randomizes Hit Chance
khit = randint(0, 2)
phit = randint(0, 1)
mhit = randint(0, 5)
zhit = randint(0, 4)
#Kick Attack
if atk == "B":
dmg = randint(1, 25)
if khit != 1:
print ("Your Attack Missed...")
if khit == 1:
zomHp = zomHp - dmg
print (("The Attack Hits for %s damage") %(dmg))
#Punch Attack
if atk == "A":
dmg = randint(1, 10)
if phit == 0:
print ("Your Attack Missed...")
if phit == 1:
zomHp = zomHp - dmg
print (("The Attack Hits for %s damage") %(dmg))
#Magic Attack
if atk == "C":
dmg = randint(1, 50)
if mhit != 0:
print ("Your Attack Missed...")
if mhit == 0:
zomHp = zomHp - dmg
print (("The Attack Hits for %s damage") %(dmg)
#Zombie's Hit
if zhit == 0:
zdmg = randint(1, 10)
myHp = myHp - zdmg
print (("The Zombie's attack Hits for %s damage")(zdmg))
print ("My Hp:", myHp)
#Zombie Miss
if zhit != 0:
print ("My Hp:", myHp)
#Zombie Dies
if zomHp <= 0:
print ("You defeated the Zombie!!!")
battle = 50
#Round End
print("Zombie's HP:", zomHp)
print('')
'else zhit!= 0:'是無效的Python代碼,下面一行沒有正確縮進。使那個'elif zhit!= 0:',或者簡單地'else:',因爲那個條件在那時不可能是錯誤的。 – jasonharper