我评估用Python编写的项目。一些是用Python 2编写的,一些是用Python 3编写的。为了简单起见,我通过命令行对它们进行了分级,但是现在,用Python 2特定语法编写的项目不起作用,因为解释器默认为Python 3.有没有一种简单的方法可以指定我想要使用哪个版本的Python?
答案 0 :(得分:2)
您可以在Windows上使用Python启动器:
C:\> py -2 some_script.py
如果脚本具有诸如#!/usr/bin/env python3
之类的shebang,则启动器会自动找到相应的Python版本:
C:\> py some_script.py
Python launcher包含在最近的Python版本中(自3.3起)。你可以另外安装它。
你也可以使用vex
实用程序与virtualenv:
$ vex py2 python some_script.py
在python some_script.py
virualenv中运行py2
。
在POSIX系统(Linux,OS X)上,如果脚本具有可执行权限($ chmod +x some-script
)并且它具有有效的shebang #!/usr/bin/python
,那么您可以直接运行它:
$ ./some-script
将使用哪个python版本(甚至是哪个程序)由shebang定义。
答案 1 :(得分:1)
最好的方法是使用virtualenv。
第二种最好的方法是设置你的系统使用python
用于python 2而python3
用于python3。
答案 2 :(得分:0)
最好的方法是使用所有平台上都可用的conda发行版。即使使用不同的python版本,这也可以轻松切换环境。例如:
conda create -n nameofpython2environment python=2 # creates a python 2 env
conda create -n nameofpython3environment python=3.3 # creates a python 3 env
然后在给定的环境中工作只需:
source activate nameofpython2environment
进入环境后,您可以在那里安装包:
conda install numpy
答案 3 :(得分:0)
使用别名:
在Windows上:
set "py2= path-to-python2-interpreter"
然后致电:
%py2%
在Mac上:
alias py2='path-to-python2-interpreter'
然后致电:
py2
在Linux上,它与在Mac上相同。
注意:关闭终端窗口后,这些别名不会保存。 如果你想要它们保存,你需要将它们放在shell启动时读取的任何配置文件中。
我只知道linux及其〜/ .bashrc
的那个