首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在virtualenv中设置非默认python版本

在virtualenv中设置非默认python版本
EN

Stack Overflow用户
提问于 2016-09-18 11:09:38
回答 2查看 1.1K关注 0票数 0

我的Debian8.5机器上的默认python版本是3.4.2。我只想为一个项目使用python 2.7。我试着在终端上逐一运行以下所有命令:

代码语言:javascript
复制
virtualenv -p python2.7 env_dir
virtualenv -p python2 env_dir
virtualenv --python=python2.7 env_dir

这是file.py内部的env_dir:

代码语言:javascript
复制
print "Hello world from inside env_dir"

显然,file.py仍然是使用python3.4.2执行的,因为我运行:

代码语言:javascript
复制
python file.py

我得到了:

代码语言:javascript
复制
      File "file.py", line 1
    print "Hello world from inside env_dir"
                                      ^
SyntaxError: Missing parentheses in call to 'print'

问题是什么,为什么它不能在python2.7中运行代码?

更新

我也尝试过:

代码语言:javascript
复制
virtualenv -p /usr/bin/python2.7 env_dir

source env_dir/bin/activate


(env_dir) amir@amir-debian:~/env_dir$ python file.py 
  File "file.py", line 1
    print "Insid virtual env"
                        ^
SyntaxError: Missing parentheses in call to 'print'

激活返回后运行python -VPython3.4.2

Update-2这里是我如何尝试创建虚拟主机和终端输出的过程:

代码语言:javascript
复制
$ virtualenv --python=/usr/bin/python2.7 venv3

Running virtualenv with interpreter /usr/bin/python2.7
New python executable in /home/amir/Desktop/venv3/bin/python2.7
Also creating executable in /home/amir/Desktop/venv3/bin/python
Installing setuptools, pip, wheel...done.

$ source venv3/bin/activate
(venv3) amir@amir-debian:~/Desktop$ python -V
Python 3.4.2

(venv3) amir@amir-debian:~/Desktop$ python
Python 3.4.2 (default, Oct  8 2014, 10:45:20) 
[GCC 4.9.1] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

为什么工作版本仍然是3.4.2,而不是像我在创建vertualenv时作为venv3选项的2.7?

EN

回答 2

Stack Overflow用户

发布于 2016-09-18 11:12:50

通过执行python2检查是否有python -v,如果有,可以执行python2 file.py

here也给出了答案

那就是virtualenv -p /usr/bin/python2.7 <path/to/new/virtualenv/>

票数 0
EN

Stack Overflow用户

发布于 2016-09-18 11:19:06

您可以指定要使用的python版本。

$ virtualenv venv --python=/usr/bin/python2

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39556999

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档