我的问题是当我尝试从命令行运行 python 脚本时,如下所示;
python_projects # python variable.py
它使用 Python 版本 3,我希望将其更改为 2.7
我的问题是当我尝试从命令行运行 python 脚本时,如下所示;
python_projects # python variable.py
它使用 Python 版本 3,我希望将其更改为 2.7
你试过shebang线吗?
例如:
#!/path/to/2.7/python
也没有什么能阻止您调用 2.7 解释器:
./path/to/2.7/python python_projects
您可以创建一个 bash 别名:
alias py27=/path/to/2.7/python
等等
py27 python_projects
读者消化:很多解决方案。
如果您以默认方式同时安装了 Python 2.7 和 Python 3.something,则应满足以下条件:
python3
始终运行您最好的 3.x 版本python
运行你最好的 2.x 版本,或者python
运行相同的东西python3
,但python2
运行你最好的 2.x 版本python2
所以,如果它存在,你总是可以使用,python
如果不存在。
此外:
python2.7
始终运行您最好的 2.7.x 版本。所以,你可以使用它。
如果python2.7
、python2
、 甚至python
不在您的 PATH 中,或者您进行了某种奇怪的安装,违反了预期的规则(或者您的发行版为您完成),您始终可以通过完整路径指定 Python。而不是说,/usr/bin/env python
或者/usr/local/bin/python
你正在使用的任何东西,使用/opt/local/python2.7/bin/python
,或者你安装它的任何地方。
假设你在一个 linux 机器上,你可以在你的 .zshrc / .bashrc 文件中添加这样的东西来在不同的 python 版本之间切换。
py25() {
rm -rf ~/.ipython
alias ipython="/usr/local/bin/ipython-2.5"
alias pip="/usr/local/bin/pip-2.5"
alias python="/usr/local/bin/python-2.5"
}
py27() {
rm -rf ~/.ipython
alias ipython="/usr/local/bin/ipython-2.7"
alias pip="/usr/local/bin/pip-2.7"
alias python="/usr/local/bin/python-2.7"
}
py33() {
rm -rf ~/.ipython
alias ipython="/usr/local/bin/ipython-3.3"
alias pip="/usr/local/bin/pip-3.3"
alias python="/usr/local/bin/python-3.3"
}
那么您可以在 cmd 行上将它们称为py25
orpy27
或py33
。这也同时处理了 pip 和 iPython。