如何知道我有哪个python版本以及如何在它们之间切换以及如何知道哪个版本有PyObjC

时间:2013-02-28 18:28:31

标签: python macos installation pyobjc

去年我安装了不同版本的python。当我打开python解释器时,我可以看到我当前正在运行的版本,但我想知道我拥有的所有版本。

我还想在不同的python版本之间切换。 我使用的是OS X 10.7.5,这应该是PyObjC内置的。 我如何知道我当前版本的python(正在运行的版本)是否支持PyObjC。 是否有一些特定的模块要导入,看看PyObjC是否在当前版本中运行。

如果当前版本(Python 2.7.3)不访问PyObjC但是如果安装了PyObjC, 将更改我当前的版本以链接它

提前感谢您的帮助

1 个答案:

答案 0 :(得分:1)

您在哪里安装了这些不同的版本?

10.7附带python 2.5,2.6,2.7。我个人使用fink,但也有macports和其他用于安装库。如果你想在不同版本的python之间切换(除非我遗漏了什么)你必须调用那个不同的python。因此,您可以使用/usr/bin/python2.5/usr/bin/python2.6/usr/bin/python2.7

我做了一个快速的谷歌搜索,当我打开其中一个内置的蟒蛇并运行似乎有效的import PyObjCTools(而不是在我的fink python中工作,这是预期的)。如果您有自定义安装的python环境,并且您想要PyObjC我建议您阅读手册或更确切地说是RTFM。快速浏览看起来就像easy_install PyObjC一样。

编辑以回答您的评论:

要将PyObjC添加到2.7.3,您只需安装它:http://pythonhosted.org/pyobjc/install.html

看起来并不太复杂,但我以前从未这样做过。另外,请注意页面下方的包依赖关系。

为了在python版本之间共享python模块......这可能不是一个好主意。除非它们是你的模块和纯python并且使用2.5,2.6和2.7之间的兼容语法,否则你不应该这样做。某些安装程序仅适用于特定版本的python,或者可能根据安装的版本而有所不同。您可以随时使用easy_install和pip为每个环境安装相同的软件包,这一点都不困难。但是如果你真的想要我想你可以做的是创建一个共享的python安装目录并将其添加到你的PYTHONPATH

mkdir ~/my_shared_python
# Add the following line to your .bash_profile or equivalent
export PYTHONPATH=$HOME/my_shared_python:$PYTHONPATH
# You can install packages into there by doing (not sure on the pip syntax):
easy_install -d ~/my_shared_python a_package_im_installing

然后你可以运行你想要的任何python,它会尝试使用这些模块,但我不建议这样做。