使用Python2.7从命令行(Linux)



我的问题是当我尝试从命令行运行python脚本时,如下所示;

python_projects # python variable.py

它使用Python版本3,我希望将其更改为2.7

你试过shebang line吗?

例如:

#!/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。以默认方式安装的内容,以下内容应该为真:

  • 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行调用它们作为py25py27py33。这也可以同时处理pip和python。

最新更新