如何运行安装了多个python版本的脚本?

时间:2012-09-30 21:02:38

标签: python command-line-interface

我在Windows上安装了2个版本的python,2.7.3和3.3。我的一些脚本是2.x和3.x.从命令行执行这些脚本以将它们引导到适当的解释器时,有一种简单的方法吗?

3 个答案:

答案 0 :(得分:8)

注意:对于Windows,使用新的Windows Python启动程序(可用于 Python 3.3 ,可下载here用于早期版本),它可识别Unix shell shebang。你可以阅读它here

大多数Linux发行版将为已安装的 Python 2.x Python 3.x 解释器创建python2python3别名(如果不是您可以在$PATH的任何位置自己创建符号链接,env命令将负责查找它们,因此您只需要将相应的解释器设置为脚本的第一行:

#!/usr/bin/env python2

#!/usr/bin/env python3

如果您将脚本文件设置为可执行文件并直接在shell上调用它们,这将指示shell使用适当的解释器。 E.g:

$ chmod +x script.py
$ ./script.py

答案 1 :(得分:2)

首先尝试一下:我在OS X上,但是当我想使用Python 2.6而不是Python 2.7(它是一个numpy / scipy的东西)时,我只需运行python2.6 whatever.py来运行Python中的whatever.py 2.6。先尝试一下。

如果这不起作用,那么您可以使用virtualenv - Python的虚拟环境构建器。

http://pypi.python.org/pypi/virtualenv

我相信也有类似的选择。

答案 2 :(得分:1)

Pedro Romano的答案是最优雅的做法。

但是如果您不想下载并安装Python启动程序,请按照以下说明创建批处理文件。您还可以创建快捷方式,将C:\ Python27 \ python.exe复制到C:\ Python27 \ python27.exe等。

我猜C:\ Python27和C:\ Python33已经在你的系统路径上了。如果是这样,你可以在C:\ Python27 \中创建一个名为python2.7.bat的批处理文件,其中包含:

C:\Python27\python.exe %1

和C:\ Python33 \

中的类似文件(例如python3.3.bat)

现在,您可以在命令提示符的任何位置运行python2.7 script.py,它应该可以工作:)