TypeError:movement()缺少1个必需的位置参数:'self'

时间:2017-08-13 12:52:15

标签: python self

我不知道该怎么做,我用Google搜索并查看了其他答案但我没有尝试过任何工作,我试图创建一个精灵,然后移动它,我能够让精灵移动但它会不自觉地回到起始位置。在这个类之后我得到NameError:名字'image'没有定义

Test

1 个答案:

答案 0 :(得分:1)

您直接在类上调用方法

pacman.movement()

也许您想将您创建的实例存储在该调用之前的行上?

sprite = pacman(PACMANSPRITE, x ,y)
sprite.movement()

您可能希望在循环之外创建一个实例:

sprite = pacman(PACMANSPRITE, x ,y)
while not done:
    # ...
    sprite.movement()

接下来,您的movement方法引用了未定义的全局image变量;大概你的意思是实例上的image属性,可以用self.image引用:

def movement(self):
    # ...
    screen.blit(self.image, (x,y))