Python Pygame错误帮助-Pygame.Error:视频系统未初始化
运行游戏(调用eventLoop()函数)时,出现以下错误:Python Pygame错误帮助-Pygame.Error:视频系统未初始化,python,pygame,Python,Pygame,运行游戏(调用eventLoop()函数)时,出现以下错误: def eventLoop(): pygame.display.update() for event in pygame.event.get(): if event.type == QUIT: pygame.quit() sys.exit Pygame在此函数中初始化(在定义eventLoop()之前): 此处调用初始化函数: def initialise(window_width, wind
def eventLoop():
pygame.display.update()
for event in pygame.event.get():
if event.type == QUIT:
pygame.quit()
sys.exit
Pygame在此函数中初始化(在定义eventLoop()之前):
此处调用初始化函数:
def initialise(window_width, window_height, window_name, window_colour):
pygame.init()
screen = pygame.display.set_mode((window_width, window_height), 0, 32)
pygame.display.set_caption(window_name)
screen.fill(window_colour)
return screen
显示生成/显示解算是一个变量,取自应用程序中的2个复选框,无论用户是否只想显示迷宫生成和/或迷宫解算
当用户选择显示和求解生成的迷宫(就在我的代码末尾)时,将调用eventLoop()函数
完全错误:
if show_generation or show_solving:
while True:
eventLoop()
x_单元:2个
y_细胞:2
展示你的新一代:真的吗
显示解决方案:正确
保存图像:True
运行Kruskal�s算法
运行深度优先搜索
回溯(最近一次呼叫最后一次):
文件“C:\Users\Ray\Desktop\project\pygame.py”,第701行,在
eventLoop()
eventLoop中第342行的文件“C:\Users\Ray\Desktop\project\pygame.py”
pygame.display.update()
pygame.error:视频系统未初始化
[以4.783s完成]
错误在eventLoop()中。
def eventLoop():
pygame.display.update()
对于pygame.event.get()中的事件:
如果event.type==退出:
pygame.quit()
系统出口
如果event.type==pygame.QUIT:
也应该是sys.exit()
因此,eventLoop()
应该如下所示:
def eventLoop():
pygame.display.update()
对于pygame.event.get()中的事件:
如果event.type==pygame.QUIT:
pygame.quit()
sys.exit()
欢迎来到SO。这两段代码没有什么可供参考的。您实际上是如何执行这些功能的?按什么顺序?相应地更改了帖子。如何呈现代码的问题不在顺序上。你能重新编辑你的帖子,这样你就可以按原样呈现代码了吗?什么是show\u generation
和show\u solution
?希望这能给您一个更好的主意?请显示错误前打印的内容。event.type==退出
不是问题。但是sys.exit
-部分是因为pygame.quit()
将取消pygame模块的初始化,并且由于循环没有停止,对pygame.display.update()
的调用将失败。@sloth我同意。谢谢-这已经修复了它。另一个问题:我现在希望我的python迷宫生成器使用flask在web应用程序上。有没有办法将此代码实现到flask web应用程序中?@slavatar\uuuu我对flask不太了解,但如果此答案对您有所帮助,那么您必须通过单击勾号符号接受此答案,这可能对未来的访问者有所帮助。
if show_generation:
screen = initialise(width, height, "Maze Generator", BLACK)
maze = generate_maze(show_generation, gen_choice)
if show_solving and not show_generation:
screen = initialise(width, height, "Maze Generator", BLACK)
visited, num_items = solve_maze(sol_choice)
if show_generation or show_solving:
while True:
eventLoop()
x_cells: 2
y_cells: 2
show_generation: True
show_solving: True
save_image: True
Running Kruskal�s algorithm
Running depth first search
Traceback (most recent call last):
File "C:\Users\Ray\Desktop\project\pygame.py", line 701, in <module>
eventLoop()
File "C:\Users\Ray\Desktop\project\pygame.py", line 342, in eventLoop
pygame.display.update()
pygame.error: video system not initialized
[Finished in 4.783s]