"pygame.error: video system not initialized"

"pygame.error: video system not initialized"

有谁知道为什么这个错误不断出现?我不确定代码有什么问题。我从视频中复制了这个只是为了测试鼠标跟踪,但即使两组代码相同(我相信),我的版本也无法正常工作。这是我从中获取代码的视频:https://www.youtube.com/watch?v=dxhNcQ-FDaY

import pygame
from pygame.locals import *
import sys

class MousePos(object):
    def __init(self):
        pygame.init()
        self.myFont = pygame.font.SysFont("Arial", 24)  
        pygame.display.set_caption("Mouse Events")
        self.myScreen = pygame.display.set_mode((400, 400), 0 ,32)
        self.myScreen.fill((255, 255, 255))
        pygame.display.update()

    def coords(self):
        text = self.myFont.render(str(pygame.mouse.get_pos()), True, (0, 0, 0))
        pygame.draw.rect(self.myScreen, (255, 255, 255), (200, 200, 100, 100), 0)

        self.myScreen.blit(text, (200, 200))
        pygame.display.update()

if __name__ == "__main__":
    newMouse = MousePos()
    while True:
        for event in pygame.event.get():
            if event.type == QUIT:
                pygame.quit()
                sys.exit()
            if event.type == MOUSEBUTTONDOWN:
                newMouse.coords()

我猜是缺少依赖项或库不匹配。 您是如何安装 pygame 的,是否有任何错误。 我建议您使用 pip 或您的发行版的包管理器。 此外,您应该确保所有可能需要的非 python API 和模块都已安装。

您的代码存在问题,您的初始化方法 __init__ 缺少下划线。由于您的 class 从未被初始化,因此您永远不会创建 Pygame 屏幕。因此错误

更改此行:def __init(self):,更改为:def __init__(self):