如何修复外星入侵文件中pygame的ImportError“库未加载”?

2024-05-19 20:27:08 发布

您现在位置:Python中文网/ 问答频道 /正文

这是我的代码:

import sys
import pygame

class AlienInvasion:
    """Overall class to manage game assets and behavior"""

    def __init__(self):
        """Initialize the game, and create game resources."""
        pygame.init()

        self.screen = pygame.display.set_mode((1200,800))
        pygame.display.set_caption("Alien Invasion")

    def run_game(self):
        """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:
                    sys.exit()

            # Make the most recently drawn screen visible
            pygame.display.flip()


if __name__ == '__main__':
    # Make a game instance and run the game
    ai = AlienInvasion()
    ai.run_game()

我已经通过mac上的终端安装了pygame。 当我试图运行我的代码时,它给了我下面的错误。 我期待着一个空白屏幕。 我试过pip uninstall pygamepip install pygame,但没有成功。 如果有人能帮忙,那就太好了

Traceback (most recent call last):

 File "/Users/mycomputer/Desktop/python_work/alien_invasion.py", line 3, in <module>
   import pygame

 File "/Users/mycomputer/Library/Python/3.9/lib/python/site-packages/pygame/__init__.py", line 81, in  <module>

   from pygame.base import * # pylint: disable=wildcard-import; lgtm[py/polluting-import]
ImportError: dlopen(/Users/mycomputer/Library/Python/3.9/lib/python/site-packages/pygame/base.cpython-39-darwin.so, 2): Library not loaded: /System/Library/Frameworks/Metal.framework/Versions/A/Metal

 Referenced from: /Users/mycomputer/Library/Python/3.9/lib/python/site-packages/pygame/base.cpython-39-darwin.so

 Reason: image not found

Tags: andtheruninimportselfeventgame