2014-11-05 3 views
2

так что я получаю эту ошибку, когда я пытаюсь запустить мой Pygame код: pygame.error: видеосистема не инициализированpygame.error: видеосистема не инициализирована

я указать, где крыло IDE говорит мне, что в код ниже

import os 
import sys 
import math 
import pygame 
import pygame.mixer 
from pygame.locals import * 

black = 0,0,0 
white = 255,255,255 
red = 255,0,0 
green = 0,255,0 
blue = 0,0,255 

screen = screen_width, screen_height = 600, 400 

clock = pygame.time.Clock() 

pygame.display.set_caption("Physics") 

fps_cap = 120 
running = True 
while running: 
    clock.tick(fps_cap) 

    for event in pygame.event.get(): #error is here 
     if event.type == pygame.QUIT: 
      running = False 

    screen.fill(white) 

    pygame.display.flip() 

pygame.quit() 
sys.exit  
#!/usr/bin/env python 

ответ

8

Вы не звонили pygame.init() в любом месте.

См basic Intro tutorial или конкретный Import and Initialize учебник, который объясняет:

Before you can do much with pygame, you will need to initialize it. The most common way to do this is just make one call.

pygame.init() 

This will attempt to initialize all the pygame modules for you. Not all pygame modules need to be initialized, but this will automatically initialize the ones that do. You can also easily initialize each pygame module by hand. For example to only initialize the font module you would just call.

В вашем конкретном случае, это, вероятно, pygame.display, что жалуется, что вы назвали либо его set_caption или его flip без сначала назовите его init. Но на самом деле, как говорится в учебнике, лучше всего init все в верхней части, чем пытаться выяснить, что именно нужно инициализировать, когда.

Смежные вопросы