在Terminal中激活不同的Python版本

时间:2014-10-18 18:10:41

标签: python osx-yosemite

刚刚将我的Mac重新格式化为Yosemite并安装了Python 2& 3使用Homebrew。我还在我的bash_profile文件中设置了一些别名,这允许我激活我想要使用的Python版本。因此,如果我键入p3,它将启动python3 shell。

我想知道是否可以在没有启动Python shell的情况下激活特定版本的Python?因此,如果我将任何文件带入终端,它会使用我已激活的版本吗?

干杯!

如果在其他地方已经回答道歉,我有一个很好的搜索,但我找不到任何东西。

1 个答案:

答案 0 :(得分:6)

我建议使用经过社区测试的高度使用的经理,而不是编写自己的脚本来管理不同的Python版本: pyenv 。使用pyenv,您可以:

  1. 从命令行轻松安装多个不同的Python版本,而不会遇到任何问题(pyenv install 3.4.2

  2. 如果要划分可用的包(pyenv virtualenv 3.4.2 mypy3projectvenv)和

  3. ,请从其中任何一个版本创建虚拟环境
  4. 将特定环境或版本设置为活动
    • 全球(pyenv global [version-or-venv]),
    • 您配置的文件夹(pyenv local [ver-or-venv])的本地及其下方,通常对您在特定版本/ virtualenv上的项目有用,并且
    • 本地到shell,直到关闭(pyenv shell [ver-or-venv])(这可能与您假定的p3命令最相似
  5. 设置要使用的Python后,所有与Python相关的调用都会重定向到相应的目标(例如pythonpipeasy_installipython *, django-admin *)。不要使用任何特殊命令执行Python脚本,只需正常调用它们(或标注#!/usr/bin/env python shebang前缀)

    *如果安装在该版本/ virtualenv

    如果您使用pyenv-installer script

    curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash
    

    然后将它告诉您的几行添加到您的~/.bash_profile脚本中(并将其发送或重启bash)...您将在几秒钟内启动并运行。诀窍通常是使用brew(sqlite,OpenSSH,zlib ......)安装所有Python构建依赖项,但在那之后你就会变成金色。