Python:未绑定方法
当我尝试绑定一个方法时,出现了一个错误:
Traceback (most recent call last):
File "pygametest3.py", line 12, in <module>
render = winback.rend()
TypeError: unbound method rend() must be called with winback instance as first argument (got nothing instead)
这是代码,直到出错的地方:
import sys, pygame
pygame.init()
class winback:
"""Render the window"""
def rend(self):
rendsurf.fill(black)
rendsurf.blit (landsurf, (landx,landy,640,480))
screen.blit (rendsurf, (0,0,640,480))
pygame.display.flip()
render = winback.rend()
另外,如果这看起来很明显,不值得发帖/重发,我感到抱歉。这是我第一次真正深入学习Python,我今天一直在研究这个,感觉有点笨,而且现在已经是凌晨12:30了。
1 个回答
4
在调用类里的普通方法之前,必须先创建这个类的实例。
class Winback(object):
def rend(self):
...
winback = Winback()
render = winback.rend()
或者你可以使用 @staticmethod
。 但最好把它做成一个模块级别的函数。