OS X上的/ usr / bin / python vs /opt/local/bin/python2.7

时间:2014-12-05 03:25:47

标签: python macos python-2.7 numpy matplotlib

您是否可以了解与OS X一起分发的Python解释器与可以通过MacPorts安装的Python解释器之间的交互?

安装networkxmatplotlib时,/usr/bin/python/opt/local/bin/python2.7的互动遇到了困难。 (后者本身是指向/opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7

的软指针

如何确定我在任何时候使用哪些Python,pip和Python库?

更重要的是,Lion似乎无法安装matplotlib。它失败了Requires numpy 1.6 or later to build. (Found 1.5.1)。如果我通过运行sudo pip install --upgrade numpy进行升级,则无效。随后尝试安装matplotlibsudo /usr/local/bin/pip install matplotlib)仍然失败并显示相同的(Requires numpy 1.6...)消息。我该如何安装matplotlib?

2 个答案:

答案 0 :(得分:6)

关注Python的要点

  • 如果脚本foobar.py#!/usr/bin/env python开头,那么您将始终获得OS X Python。即使MacPorts在您的路径中将/opt/local/bin放在/usr/bin之前,情况也是如此。原因是MacPorts使用名称python2.7。如果您想使用env并使用MacPorts Python,则必须编写#!/usr/bin/env python2.7
  • 如果脚本foobar.py#!/usr/bin/python#!/opt/local/bin/python2.7显式启动,则将使用相应的Python解释器。

有什么要记住pip

  • 要为pip安装/usr/bin/python,您需要运行sudo /usr/bin/easy_install pip。然后,您拨打pipeasy_install/usr/bin/pip不会安装/usr/local/bin/pip,而是pip}
  • 要为/opt/local/bin/python2.7安装sudo port install py27-pip,您需要运行pip-2.7。然后,您将致电/opt/local/bin。你将获得pip2.7中的点子。 小心,因为如果您输入/usr/local/bin/pip2.7,您将获得networkx(OS X点)。

正在安装matplotlibnetworkx

  • 要为OS X Python安装sudo /usr/local/bin/pip install networkx,您需要运行numpy 1.5.1。我不知道如何在OS X Lion上安装matplotlib。可能OS X必须坚持networkx因为它在内部使用它。
  • 要为MacPorts-Python安装matplotlibsudo pip-2.7 install networkx,请致电sudo pip-2.7 install matplotlibmatplotlib。 {{1}}会安装很多警告,但会通过。

答案 1 :(得分:0)

我还建议使用Continuum Analytics“anaconda”发行版。这样做的一个好处是你不需要修改标准的OS X python环境。