Kivy运行Python3.9.7项目报错:导入_window_sdl2时DLL加载失败
问题核心原因
你遇到的报错是Kivy 2.0.0 版本和 Python 3.9 系列不兼容导致的,Kivy 2.0.0 官方正式适配的最高 Python 版本为 3.8,Python 3.9 支持是从 Kivy 2.1.0 版本才开始提供的,所以会出现 sdl2 相关 DLL 加载失败的问题。
可执行的解决思路
- 方案1:升级Kivy到适配Python 3.9的版本
依次执行以下命令:# 卸载现有Kivy及所有依赖包 pip uninstall -y kivy kivy_deps.gstreamer kivy_deps.angle kivy_deps.glew kivy_deps.sdl2 # 清除pip缓存避免残留旧版本文件 pip cache purge # 安装最新稳定版Kivy及全部依赖 pip install kivy[full] - 方案2:保留Kivy 2.0.0版本,降级官方Python到3.8.x系列
这个版本组合经过官方验证完全兼容,不会出现DLL加载异常问题。 - 方案3:解决Anaconda环境下Spyder内核冻结问题(无需切换环境)
不要直接在Spyder内置的IPython内核中运行Kivy程序,修改运行方式:在Spyder菜单栏选择「运行→外部工具→添加」,命令栏选择对应Anaconda环境的python.exe路径,参数栏填写$FILE,工作目录填写$FILE_DIR,之后通过外部工具启动Kivy程序,关闭窗口后不会影响Spyder内核运行。 - 方案4:排查Python安装源问题
如果你当前用的Python 3.9是微软商店安装的版本,该版本自带沙盒限制,容易出现第三方库DLL加载失败的问题,可以卸载该版本,到Python官网下载官方安装包重装后,再重新安装Kivy即可。
内容的提问来源于stack exchange,提问作者ParanoidAndroid
相关产品推荐
相关产品推荐

