0

我正在尝试开始使用该pygame模块,但我无法让它运行。我正在使用带有 Python 2.7 和 MacPorts 的 Mountain Lion,但在我发现并开始使用 MacPorts 之前,我还使用 Anaconda 安装了一些科学和数学模块。请注意,在我开始以下任何操作之前,我的 MacPorts 刚刚更新。我最初尝试只使用:

sudo port install py27-game

看起来它可以正常工作并且可以毫无问题地设置所有内容。但是,当我从命令行进入 Python 解释器并输入:

import pygame

我得到回应:

Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
ImportError: No module named pygame

所以我进去做了:

import sys
print sys.path

这给了:

 ['', '/Users/trav/anaconda/lib/python27.zip', '/Users/trav/anaconda/lib/python2.7',
 '/Users/trav/anaconda/lib/python2.7/plat-darwin',   
 '/Users/trav/anaconda/lib/python2.7/plat-mac',  
 '/Users/trav/anaconda/lib/python2.7/plat-mac/lib-scriptpackages', 
 '/Users/trav/anaconda/lib/python2.7/lib-tk', '/Users/trav/anaconda/lib/python2.7/lib-  
 old', '/Users/trav/anaconda/lib/python2.7/lib-dynload',  
 '/Users/trav/anaconda/lib/python2.7/site-packages', 
 '/Users/trav/anaconda/lib/python2.7/site-packages/PIL', 
 '/Users/trav/anaconda/lib/python2.7/site-packages/setuptools-0.6c11-py2.7.egg-info']

所以,我猜是因为我最初在此处放置 NumPy、SciPy 和 Matplotlib 设置时使用了 Anaconda 设置,这导致 MacPorts 在路径中以某种方式与此发生冲突。

我应该删除 Ananconda 包吗?如果是这样,当我这样做时,我该如何去删除这些依赖关系?

4

1 回答 1

0

好的,所以我找到了问题所在,这就是我的路径。我进去并删除了anaconda包:

rm -r ~/anaconda

然后,我使用 macports 基本上重新安装了整个 scipy 堆栈:

sudo port install py27-wxpython py27-numpy py27-matplotlib py27-scipy py27-ipython

这需要一些时间来编译,完成后我进入命令行并使用:

sudo port select --set python python27

之后,我打开了我的解释器并毫无问题地导入了我所有的科学计算需求和我之前用 macports 安装的 pygame。我希望这对将来的其他人有所帮助。另外:当您删除像 anaconda 这样的软件包时,请确保并关闭您的终端,然后重新打开它,否则它仍然会尝试使用不再存在的 anaconda 的依赖项。我已经设置了 macports,所以在删除 anaconda 后,macports 路径成为默认路径。

最后一次编辑。为了让所有这些正确运行并允许我在 emacs 中运行脚本以及所有导入的模块,我必须从我的普通 emacs 编辑器切换到 aquamacs,以便从内部使用正确的路径emacs 环境,或者我可以使用 /Application/Emacs.app/Contents/MacOS/Emacs 从终端运行 emacs。

于 2013-08-16T14:25:23.863 回答