You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1运行Pygame报错无法从pygame.font导入Font的解决求助

Mac M1设备Pygame font模块循环导入报错解决方案

该报错属于Apple Silicon芯片设备上Pygame版本适配+导入顺序错误共同导致的问题,单独安装sdl2无法覆盖全部修复条件,按以下步骤操作即可解决:

  • 第一步:修正代码导入顺序
    你当前代码在pygame.init()执行前就提前导入了pygame.font.SysFont,而Pygame的font模块依赖全局初始化完成后才能正确加载,直接提前导入会触发循环导入报错。修改导入段代码如下:
import pygame
from pygame.draw import circle,rect
from pygame.locals import *
import random
# 先执行pygame初始化
pygame.init()
# 删掉原代码中`from pygame.font import SysFont`这一行,后续直接用pygame.font.SysFont调用即可
width = 500
height = 900
font = pygame.font.SysFont('arial',50)
  • 第二步:重装适配M1芯片的Pygame版本
    先卸载当前环境中的旧版本Pygame:
    pip uninstall pygame -y
    再安装稳定适配Apple Silicon的版本:
    pip install pygame==2.5.2
    如果使用conda环境,执行对应安装命令:
    conda install -c conda-forge pygame
  • 第三步:排查干扰项
    • 检查项目根目录下是否存在pygame.py、font.py这类和Pygame内置模块同名的文件,如果有需重命名或删除,避免导入优先级错误触发循环导入
    • 确认当前使用的Python是原生arm64架构版本,执行命令python -c "import platform;print(platform.machine())",输出为arm64即为正常,若输出x86_64则需更换原生arm64的Python运行环境

按以上步骤操作完成后即可正常运行你的项目代码。

内容的提问来源于stack exchange,提问作者Ulto 4

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.09 07:09:02