Python代码在“if self.hp< 0”行返回语法错误

时间:2013-02-04 08:03:44

标签: python if-statement syntax-error

我一直关注着this系列的YouTube视频,以便更好地了解python。我对某些代码所做的事情没有深刻的理解,但我或多或少得到了每个部分应该实现的内容,即使我可能不确定如何。

我在最后一行收到语法错误:

class Character(object):
def __init__(self, name, hp):
    self.name = name
    self.hp = hp 

    self.dead = False
def attack(self, other):
    pass

def update(self):
    if self.hp < 0     #Error's on this line
        self.dead = True
        self.hp = 0

这是追溯:

Traceback (most recent call last):   File "game.py", line 4, in
<module>
    from Characters.player import *   File "/Users/Devlin/Desktop/Dev/Python/rpg/Characters/player.py", line 2,
in <module>
    from character import *   File "/Users/Devlin/Desktop/Dev/Python/rpg/Characters/character.py", line
12
    if self.hp < 0
                 ^ SyntaxError: invalid syntax

2 个答案:

答案 0 :(得分:3)

你在行尾忘了一个冒号(:):

if hp < 0:

答案 1 :(得分:1)

您的init看起来像一样构造函数。因此,它应该是__init__而不是init。否则,您将遇到在对象实例化时未执行的问题。