pygame.error: видеосистема не инициализирована ошибка кода Python - PullRequest
0 голосов
/ 29 мая 2018

После запуска этого кода я получил ошибку:

pygame.error: video system not initialized

Мой код:

import sys
import pygame
def run_game():
    # Initialize game and create a screen object.
    pygame.init()
    screen = pygame.display.set_mode((1200, 800))
    pygame.display.set_caption("Alien Invasion")
# Start the main loop for the game.
while True:
    # Watch for keyboard and mouse events.
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
    # Make the most recently drawn screen visible.
    pygame.display.flip()
run_game()

Кто-нибудь может мне помочь и объяснить, что означает эта ошибка и как ее исправить?

Ответы [ 2 ]

0 голосов
/ 29 мая 2018

Ошибка возникает из-за того, что pygame.event.get вызывается без инициализированного отображения (pygame.display.set_mode).Проблема в том, что ваш цикл while не имеет правильного отступа, поэтому он выполняется перед вызовом функции run_game.Цикл должен быть внутри функции run_game.

import sys
import pygame


def run_game():
    # Initialize game and create a screen object.
    pygame.init()
    screen = pygame.display.set_mode((1200, 800))
    pygame.display.set_caption("Alien Invasion")

    # Start the main loop for the game.
    while True:
        # Watch for keyboard and mouse events.
        for event in pygame.event.get():
            if event.type == pygame.QUIT:
                pygame.quit()
                sys.exit()
        # Make the most recently drawn screen visible.
        pygame.display.flip()

run_game()
0 голосов
/ 29 мая 2018

введите свой код:

run_game()

до while statment`

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...