Pygame错误:视频系统未初始化

时间:2011-07-30 06:12:51

标签: python pygame

我之前使用过pygame与python 2.7,但最近我'升级'到python 3.2。我下载并安装了Pygame的最新版本,据说可以使用这个版本的python。但是,我有一个相当令人沮丧的错误,应该是一个简单的代码块。代码是:

import pygame, random

title = "Hello!"
width = 640
height = 400
pygame.init()
screen = pygame.display.set_mode((width, height))
running = True
clock = pygame.time.Clock()
pygame.display.set_caption(title)

running = True

while running:
    for event in pygame.event.get():
        if event.type == pygame.quit():
            running = False
        else:
            print(event.type)
    clock.tick(240)
pygame.quit()

我每次运行它都会得到:

17
1
4
Traceback (most recent call last):
  File "C:/Users/David/Desktop/hjdfhksdf.py", line 15, in <module>
    for event in pygame.event.get():
pygame.error: video system not initialized

为什么我收到此错误?

1 个答案:

答案 0 :(得分:15)

if event.type == pygame.quit():

在上面一行中,您正在调用pygame.quit()这是一个函数,而您真正想要的是常量pygame.QUIT。通过调用pygame.quit(),pygame不再被初始化,这就是你得到错误的原因。

因此,将行更改为:

if event.type == pygame.QUIT: # Note the capitalization

将解决您的问题。

重要的是要注意pygame.quit()不会退出程序。