【问题标题】:Python3 error: "pygame.error: video system not initialized"Python3 错误:“pygame.error:视频系统未初始化”
【发布时间】:2020-04-15 06:42:44
【问题描述】:

我正在尝试学习使用python 中的pygame 模块制作游戏。 我在 Windows 10 中使用 ubuntu 终端。这是我的程序。

# 1 - Import library
import os
os.environ['SDL_AUDIODRIVER'] = 'dummy'
import pygame
from pygame.locals import *

# 2 - Initialize the game
print("-1")
pygame.init()
pygame.display.list_modes()

print("0")
width, height = 640, 480
print("00")
screen=pygame.display.set_mode((width, height))
print("1")

# 3 - Load images
player = pygame.image.load("resources/images/virus.png")
print("3")
# 4 - keep looping through
while 1:
    # 5 - clear the screen before drawing it again
    screen.fill(0)
    print("4")
    # 6 - draw the screen elements
    screen.blit(player, (100,100))
    print("5")
    # 7 - update the screen
    pygame.display.flip()
    # 8 - loop through the events
    for event in pygame.event.get():
        # check if the event is the X button 
        if event.type==pygame.QUIT:
            # if it is quit the game
            pygame.quit() 
            exit(0) 

我一运行程序,就会得到这个错误。

pygame 1.9.6
Hello from the pygame community. https://www.pygame.org/contribute.html
-1
Traceback (most recent call last):
  File "pythongame.py", line 10, in <module>
    pygame.display.list_modes()
pygame.error: video system not initialized

我看了很多帖子,但没有用。请告诉我如何解决这个问题。

【问题讨论】:

  • 我无法重现此错误,是否有任何其他代码相关,或者这正是您正在运行的代码?

标签: python python-3.x pygame


【解决方案1】:

如果您初始化需要使用 pygame.init() 的 pygame “模块”并引发错误,则不会显示此错误或类似这样的错误。 您可以使用 pygame.display.init() 之类的东西初始化所有“内部 pygame 模块”,如果您这样做,则会打印回溯。我也没有任何问题使用 pycharm 来执行这个程序。 也许这与您使用的 unbuntu 终端有关。尝试使用 pygame.display.init() 初始化显示类 这是我所说的链接:pygame.org

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多