2014-01-07 166 views
4

我想清理一些现在我有小牛的东西。我用Homebrew安装python 2.7和3.3。我也有他们各自的点子。现在我想要有一个健全的virtualenv设置。用virtualenv安装pip3

我从virtualenv with python2 and python3 via Homebrew看到我可以指定新创建的virtualenv将使用哪个版本的python。什么是最好的(即最简单的使用/记忆)方式来确保使用Python 3.3的virtualenv使用pip3? ETA:我之前没有必须使用3.3,所以这是我第一次尝试维护不同版本的经验。对不起,如果这有一个明显的答案。

+2

执行中你的shell“哪个python”,你会猜测这个版本。你可以命名你的环境,如下所示: - moliware

+0

我不知道我关注。你的意思是暗示,因为Homebrew Python 3.3安装包含pip3,那么安装virtualenv会自动包含它的pip3?我并不认为这是理所当然的。如果是这样,真棒。 – verbsintransit

+1

我不确定这个评论意味着什么,但是是的,你是对的 - pip应该以正确的方式安装到virtualenv上,因为它是作为virtualenv的一部分安装的。 – Ryan

回答

1

看看这篇文章:Python Development Environment on Mac OS X Mavericks 10.9。它非常清楚地描述了如何使用Homebrew在同一台机器上设置两个版本的Python,并包含一些有用的指针。

在文章中,作为@moliware已经建议,作者将-py3附加到Python3 virtualenv。

+0

是的,谢谢 - 我在@ moliware的初始评论中做了进一步的研究之后,确实遇到了这个问题,这让我质疑了我的假设。 – verbsintransit

+1

什么是'mkvirtualenv -ppython3.3 some_name'对我来说 – scythargon

6

积分为scythargon(留在Kristofanswer in this thread的评论中),并且,由于它完全符合我的需要,我认为它应该得到自己的答案。

使用virtualenvwrapper创建virtualenv时,请使用-p标志将其明确地与特定版本的Python关联。在下面的例子替换{virtualenv_name}与您预期的虚拟环境名称:

的Python 3.3:

$ mkvirtualenv {virtualenv_name} -ppython3.3 

的Python 3.4:

$ mkvirtualenv {virtualenv_name} -ppython3.4 

的Python 2.7:

$ mkvirtualenv {virtualenv_name} -ppython2.7 
+0

在我的Ubuntu机器上,这个工作是通过删除'''mk'''来实现的。例如 - '''virtualenv env -ppython3.3''' – JasTonAChair