Python 无法识别 MacPorts 安装包

标签 python shell macports

提前感谢您的建议!

背景:

相对于这个站点上的人来说,我是编程新手,尽管进行了一些研究,但我不熟悉使用 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/

相关文章:

python - 如何读取用户在不和谐服务器中离线并节省时间

python - 将数据发布到网络进行处理

linux - 为什么在 bash 脚本中第二次使用 "$?"时赋值语句不起作用

macos - 无法通过 MacPorts 安装 Meld

python - 如何在图中搜索形状?

python - 基于 DataFrame 将参数传递给 stats.friedmanchisquare 的正确方法是什么?

linux - 在另外 2 个模式之间搜索一个模式

linux - 如何以 super 用户身份登录并执行脚本[复制]

ruby - 无法在 Mac OSX 10.8.3 上运行 ruby

MacPorts 将安装设置为事件?