错误:视频系统未初始化;有什么解决方案吗?
我查了很多资料。每次看到有人问这个问题,大家都会告诉他们要调用 pygame.init()。当提问的人说他们已经这样做了之后,就没有人再回复了。
我尝试了我能想到的所有方法,但都没有用。
错误信息如下:
追踪记录(最近的调用在最前面): 文件 "C:\Python26\TwC\main.py",第 183 行,在 for e in pygame.event.get(): 错误:视频系统未初始化
这是我导入的内容,以防有冲突:
#imports
import os, sys
import pygame
from pygame.locals import *
这是我调用 pygame.init() 的地方,证明我确实调用了:
#initialize
os.environ["SDL_VIDEO_CENTERED"] = "1"
pygame.init()
#setup display
pygame.display.set_caption("TwC V%s" % version)
screen = pygame.display.set_mode((320, 240))
最后,这里是引发错误的那一行代码:
while running:
clock.tick(60)
for e in pygame.event.get():
if e.type == pygame.QUIT:
running = False
if e.type == pygame.KEYDOWN and e.key == pygame.K_ESCAPE:
running = False
编辑: 删除导致错误的那段代码,只会让另一个地方出现同样的错误,这意味着问题出在 pygame.init() 上。我在考虑干脆放弃这整个项目,重新做一遍。其实做这个也没花太长时间。
2 个回答
1
一个很简单的解决办法就是确保你程序的最后一行代码 pygame.quit()
是没有缩进的。错误可能会让你觉得问题出在之前的代码上……我就被这个搞糊涂了大约15分钟。
1
你能成功运行这个基础代码吗? Pygame,简单的物理引擎,如何在平面之间保持点的连接?