提前感谢您的建议!
背景:
相对于这个站点上的人来说,我是编程新手,尽管进行了一些研究,但我不熟悉使用 Unix 类型的 shell,不熟悉管理包真正涉及的内容,或者不熟悉“Java 博士”IDE 或默认的 R GUI。我有一台装有 OSX 10.5.8 的 2008 年末 macbook
我的目标:
我正在尝试在 Python 中安装以下软件包:scipy、numpy、matplotlib、networkX
我的故事:
据我了解,我的 10.5.8 安装了 Python 2.5,这是系统正常运行所需要的,您真的不应该搞砸。我安装的软件包需要 Python 2.7,因此在重新格式化我的机器后,我使用 Python 网站上的 .dmg 安装了适用于 OSX 10.3(2.7.X 提供的最新 Python/OSX)的 Python 2.7.2。然后,我使用 Apple 网站上的 .dmg(适用于我的操作系统的版本)安装了 XCode,并使用他们网站上的 .dmg 安装了 MacPorts(适用于我的操作系统的版本)。然后,我相信我使用 MacPorts 来安装软件包:
sudo port install py27.numpy
但是,当我尝试导入显然已安装的包时,Python 告诉我它们不存在。我很确定我的机器上只有 2 个版本的 Python,2.5 用于 OSX,2.7.2 用于我(我如何检查这个?),如果我检查哪个版本的 Python 正在运行,无论是通过 Shell 还是通过 IDLE,我得到:
>>> import sys
>>> print sys.version
2.7.2 (v2.7.2:8527427914a2, Jun 11 2011, 14:13:39)
[GCC 4.0.1 (Apple Inc. build 5493)]
如果我运行“which python”我得到:
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
当我检查 MacPorts 使用的软件包安装位置时
port contents py27-packagename
我主要在以下位置获取目录:
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/
有几个目录在
/opt/local/share/py27-matplotlib/examples/
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/share/doc/networkx-1.5/
和一个目录中的每一个
/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/f2py
/opt/local/share/doc/py27-matplotlib/CHANGELOG
/opt/local/share/doc/py27-matplotlib/README.txt
/opt/local/share/doc/py27-matplotlib/TODO
我的问题:
如何让 Python 识别我的包?理想情况下,我想对其进行设置,以便我可以使用 Python IDLE,以及从命令行调用它。
我尝试在以下位置复制一些解决方案: Locate MacPorts package? 但我真的不明白我在做什么,所以很难适应那里正在做的事情。
再次感谢大家!
最佳答案
我最初将您的问题误解为标准问题 - 为什么我不能运行我的 macports python?但实际上,您指定要尝试使用自行安装的 python,并且确实如此。问题是,python 不知道去哪里寻找安装了 macports 的库。
您所链接的问题是正确的。见this response ,但将路径替换为您的 macports 库的实际路径,即:
export PYTHONPATH="/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages:$PYTHONPATH"
看看这样行不行!
关于Python 无法识别 MacPorts 安装包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9305154/