已安装Pygame却无法导入,运行旧程序报ModuleNotFoundError
解决Pygame已安装但无法导入的问题
你遇到的核心问题大概率是Python运行环境和安装Pygame的环境不匹配——虽然你确实把Pygame装到了Python3.7里,但现在运行程序用的是另一个Python解释器,自然找不到这个模块。下面是具体的排查和解决步骤:
1. 确认当前运行程序的Python环境
先在你的程序最开头加上这几行代码,运行看看输出:
import sys print("当前Python解释器路径:", sys.executable) print("当前Python版本:", sys.version)
对比输出里的路径和你安装Pygame的路径(c:\users\user\appdata\local\programs\python\python37\python.exe),如果不一样,说明你现在用的是另一个版本的Python(比如Python3.8/3.9等),而这个版本里没有装Pygame。
2. 验证pip对应的Python版本
打开命令提示符,运行:
python -m pip --version
输出里会显示pip对应的Python安装路径,比如应该是c:\users\user\appdata\local\programs\python\python37\lib\site-packages\pip。如果和你安装Pygame的路径一致,那问题就出在运行程序时选错了解释器。
3. 解决方法
方法一:用正确的Python解释器运行程序
- 如果用IDLE:找到Python37安装目录下的
idle.exe(比如c:\users\user\appdata\local\programs\python\python37\Lib\idlelib\idle.exe),打开它再加载你的程序运行。 - 如果用命令行:直接指定Python37的路径来运行程序,比如:
c:\users\user\appdata\local\programs\python\python37\python.exe "C:\Users\User\Desktop\Python\ESOL Games\Level 1.py"
方法二:给当前运行的Python环境安装Pygame
如果确认你现在想使用的是另一个Python版本,就给那个版本安装Pygame。比如如果当前用的是Python3.8,运行:
python3.8 -m pip install pygame
为什么会出现这种情况?
可能是你后来安装了其他版本的Python,系统默认的Python解释器被切换了,或者IDLE快捷方式指向了新的Python版本。虽然你没动原有程序和IDLE,但系统环境的变化会导致运行时用错解释器。
内容的提问来源于stack exchange,提问作者Vaho
相关产品推荐
相关产品推荐

