题
我目前在Mac上安装了Python 2.6.2。我正在编写一个必须在Python 2.5.2上运行的脚本。因此,我想编写一个Python脚本,并且测试专门针对2.5.2而不是2.6.2。
我看着Virtualenv,但这似乎并不能解决我的问题。我跑了 python virtualenv.py TEST
这制作了测试dir,但其中有python 2.6。有没有一种方法使Virtualenv使用与计算机上安装的默认值不同的Python版本?是使用的另一种方法 #!
作为Python脚本的第一行?我该怎么做?
解决方案
您只需安装Python 2.5.2。
我在清醒上安装了3个不同版本的Python,它们在下面使用不同的链接 /bin/
因此很容易调用特定版本
python-> python3-> python3.1
python2-> python2.7
Python2.5
其他提示
查看 毒品;它旨在完全做到这一点。
您可以使用Virtualenv设置具有不同python版本的沙盒环境。正如Kable所做的那样,安装2.5。您要测试的版本。然后创建您的虚拟环境:
virtualenv --p=python2.5 myapp
为了获得一个干净的环境,您可以使用上面的命令使用-no-No-site包装开关。试图模拟新的新鲜设置时非常方便。现在激活您的Virtualenv:
source myapp/bin/activate
如果您检查Python版本,您现在应该获得2.5.x版本:
python -V
现在,您可以按照通常的方式在虚拟环境中安装模块:
easy_install ...
pip ...
退出您的虚拟环境:
deactivate
希望这可能有帮助。
尝试 #!/path/to/your/python/version
但是请确保您从终端执行脚本,并在手动之前使其可执行: chmod 755 myscript.py
使用 “ Virtualenv” 您可以在一台计算机上具有不同的隔离Python环境。另外,您可以在不同的Python解释器版本之间进行任何时间切换。
什么是Virtualenv?
虚拟环境是Python的孤立工作副本,它使您可以从事特定项目的工作,而不必担心影响其他项目。它启用了Python的多个并排安装,每个项目一个。它实际上并未安装python的单独副本,但确实提供了一种巧妙的方式来保持不同的项目环境隔离。
如何安装?
pip install virtualenv
为Python 2.7创建虚拟环境:
root:~# which python2.7
/usr/bin/python2.7
root:~# which python3.4
/usr/local/bin/python3.4
您还可以使用您选择的Python解释器:
root:~# virtualenv -p /usr/bin/python2.7 Vpy27
Running virtualenv with interpreter /usr/bin/python2.7
New python executable in /root/Vpy27/bin/python2.7
Also creating executable in /root/Vpy27/bin/python
Installing setuptools, pip, wheel...done.
要开始使用虚拟环境,需要激活它:
root:~# source Vpy27/bin/activate
当前虚拟环境的名称现在将出现在提示的左侧:
(Vpy27) root:~# python -V
Python 2.7.3
例如,像往常一样安装软件包:
(Vpy27) root:~# pip install junos-eznc >> All pip installs done here, will be available only in this environment.
如果您目前在虚拟环境中工作,则可以将其停用:
(Vpy27) root:~# deactivate
为Python 3.4创建虚拟环境:
root:~# which python3.4
/usr/local/bin/python3.4
root:~# virtualenv -p /usr/local/bin/python3.4 Vpy34
root:~# source Vpy34/bin/activate
(Vpy34) root:~# python -V
Python 3.4.4
还有一种使用已经可用的网站包装来创建虚拟环境的方法。