Python pygame-错误对象不可调用
下面是我遇到问题的代码。有人能帮我解决这个错误吗?我想做的是,当我单击start game时,它调用if语句下main()中的行 错误:Python pygame-错误对象不可调用,python,class,pygame,typeerror,Python,Class,Pygame,Typeerror,下面是我遇到问题的代码。有人能帮我解决这个错误吗?我想做的是,当我单击start game时,它调用if语句下main()中的行 错误: Traceback (most recent call last): File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 122, in <module> main() File "C:/Users/Administrator/Pychar
Traceback (most recent call last):
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 122, in <module>
main()
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 75, in main
controller = Manager(screen)
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 23, in __init__
self.go_to(TitleMenu(screen))
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 47, in __init__
self.main_loop()
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 54, in main_loop
self.menu.update(events)
File "C:\Users\Administrator\PycharmProjects\untitled\menumaker.py", line 46, in update
self.options[self.option][1]()
File "C:/Users/Administrator/PycharmProjects/untitled/Game.py", line 38, in <lambda>
self.menu = makeMenu(["START GAME", lambda: run()], ["CONTROLS", lambda: Help(screen)], ["QUIT GAME", sys.exit])
TypeError: 'bool' object is not callable
问题是全局变量
run
与run
函数混淆:
def run():
global run
run = True
pass
这意味着当您尝试调用run()
时:
它尝试调用布尔变量。若要修复此问题,请重命名全局变量
正在运行
,或重命名函数开始运行
问题在于全局变量运行
与运行
函数混淆:
def run():
global run
run = True
pass
这意味着当您尝试调用run()
时:
它尝试调用布尔变量。要修复它,请重命名全局变量
正在运行
,或重命名函数开始运行
确定修复了错误,但现在当我运行它时,什么也没有发生,它只是坐在那里而不是运行函数,退出时会出现一个错误,说“视频系统未初始化”@user1758231:听起来像是一个完全无关的错误。你应该试着调试它,如果你想不出来,你可以提出一个新问题。(但以防万一-新的运行
函数和新的生成菜单
行是什么样子的?)好的,修复了错误,但现在当我运行它时,什么也没有发生,它只是坐在那里而不是运行函数,当我退出时,我得到一个错误,说“视频系统未初始化”@user1758231:听起来像是一个完全无关的错误。你应该试着调试它,如果你想不出来,你可以提出一个新问题。(但以防万一-新的运行
函数和新的生成菜单
行是什么样子的?)
self.menu = makeMenu(["START GAME", lambda: run()], ["CONTROLS", lambda: Help(screen)], ["QUIT GAME", sys.exit])