我目前在我的Mac上安装了多个版本的Python,它附带了一个版本,我最近从python.org下载的版本,用于在本地运行Zope的旧版本以及Appengine正在使用的另一个版本。这有点乱。使用一个版本的python来统治它们的任何建议?如何删除旧版本并将我的所有应用程序链接到单个安装。我应该知道的任何Mac特定陷阱?这是一个愚蠢的想法吗?

有帮助吗?

解决方案

拥有多个版本的Python并没有什么本质上的错误。有时,在使用具有版本依赖性的应用程序时,这是必需的。可能最大的问题是处理站点包依赖关系,这可能因应用程序而异。 virtualenv 等工具可以为您提供帮助。您应该做的一件事是尝试删除/ System / Library / Frameworks中Apple提供的Python并链接到/ usr / bin / python。 (注意最近对多个版本的讨论此处。)

其他提示

Ian Bicking的 virtualenv 允许我为我构建的每个应用程序分离Pythons,并让我决定是否在孤立的Python环境中包含全局站点包。

我没有和Zope一起尝试过,但我猜测以下内容应该很好用:

  1. 使用你的Zope的Python,创建一个新的virtualenv,无论有没有--no-site-packages
  2. 将你的Zope放入virtualenv
  3. 使用$ VENV / bin / activate
  4. 激活环境
  5. 安装任何所需的site-packages
  6. 现在使用Python在$ VENV / bin / python
  7. 运行你的Zope

    使用各种版本的Python,Django和附加组件管理Django项目非常出色。

    这篇文章似乎更详细地讨论了Grok和Virtualenv的具体细节,但一般情况应该适用于Zope。

+1为virtualenv。

即使您不需要不同的Python版本,仍然可以将开发依赖项与系统Python分开。

我不确定您使用的是哪种操作系统,但我发现这些指令对于在OSX上运行python开发环境非常有用。

我更喜欢的方法应该适用于每个类UNIX操作系统:

为需要特定python版本和用户帐户的每个应用程序创建。在每个用户中安装相应的python版本,并使用用户本地前缀(如〜/ build / python),并将〜/ build / bin /添加到用户的PATH环境变量中。在正确的用户中安装/使用python应用程序。

这种方法的优点是各个python安装之间的完美隔离和相对方便的选择正确的python环境(只需su到适当的用户)。操作系统也保持不变。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top