我有两个 Ubuntu VM。在其中一台上,我似乎无法安装 PyGame。我尝试通过各种方法安装:
sudo apt-get install python-pygame
- (删除并重新安装 pygame 几次)
- 从源代码构建(也失败)
- 使用 pip(也失败)
核心问题似乎是当我import pygame
使用 Python 2 时,会出现No module named pygame
错误。(我使用 Python 3 也遇到了同样的问题,但我并不想让它在 Python 3 上工作。)
我查看了各种 SO/SE/AU 问题,包括这个以及其他一些。
有没有办法深入排查这个问题和/或解决它?我想弄清楚如何让它工作apt-get
。
在另一个类似的虚拟机上,PyGame 可以通过 顺利安装apt-get
。
编辑:对此的响应python -c 'import sys; print "\n".join(sys.path)'
如下,这是我很久以前为 MRuby 设置的(并且需要删除):
/home/ashiq/Desktop/my-android-toolchain/lib/python27.zip
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7/plat-linux2
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7/lib-tk
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7/lib-old
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7/lib-dynload
/home/ashiq/Desktop/my-android-toolchain/lib/python2.7/site-packages
进一步编辑:my-android-toolchain
从路径中删除并将其移除后(来自.bashrc
),我可以导入 pygame。
答案1
看起来您在主目录中构建或安装了自定义 Python(~/Desktop/my-android-toolchain
)。
此自定义 Python 安装可能隐藏了系统 Python。您可以使用命令检查正在运行哪个可执行文件
which python
它应该会报告类似的内容/usr/bin/python
。这是系统预安装的 Python 安装,由您的包管理器 () 维护apt
。
如果您使用它来安装 Python 包,或者如果您使用此安装的pip
,它们都将在系统的 Python 安装中安装其模块。那里的任何内容都不会影响您主目录中的自定义 Python 安装,因为您会看到它只有自己的库路径。
您应该删除自定义的my-android-toolchain
Python 安装,或者确保您/usr/bin/python
默认运行系统的 Python。