我通常用python 2.7开发,但是想在python 3.x中开始创建一些工具。什么是让两者并排运行的最简单方法,同时保持对我安装的库的一些控制...
如果我使用pyenv
在版本之间切换,它会传播到通用的shebang线吗?像
#!/usr/bin/env python
甚至更好,我可以指定shebang中的哪个python吗?
#!/usr/bin/env python3
我期待很多“使用virtualenv
”回复。这真的是唯一的方法吗?我觉得我想在我的系统上安装“基础”python和我安装的任何库,这样我就可以通过键入像pyenv global 3.2.3
我目前正在使用OSX,Mountain Lion。
尝试更好地解释一下,我有两个替代问题:
如果我使用virtualenv
这样的东西,我是否会失去交替运行python2和python3脚本的能力,而不会改变环境(即只通过shebang)?
相反,如果我使用两个独立版本安装,我如何控制/知道pip
或easy_install
将安装什么。
更新:目前在shebang行中使用python3
,并使用pip3
将软件包安装到python3 ...似乎工作正常。
答案 0 :(得分:3)
你有一些可能的方法与os稍微变化:
你可能需要付费才能看到6并在python 3中工作,而不是将旧版安装转换为2.7。
另请参阅here,了解如何使用virtualevn和不使用(根据需要修改版本号)在python 3下安装python 3库。
此外,在Windows上,当您安装Python 3时,您可以选择将python启动程序(py.exe& pyw.exe)安装到Windows目录中。 py启动器具有以下行为:
将.py文件与py.exe和.pyw文件与pyw.exe关联将导致shebang行被尊重。
另外使用py -3.5-32 -m pip install some_package
将专门安装some_package
到32位python 3.5安装等。
免责声明:我是python启动器即将发布enhancements的作者,稍微扩展了上述选项。