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

从命令行(Linux)使用Python2.7,python,Python,我的问题是当我尝试从命令行运行python脚本时,如下所示 python_projects # python variable.py 它使用Python版本3,我想把它改为2.7,你试过一行了吗 例如: #!/path/to/2.7/python 没有任何东西阻止您调用2.7解释器: ./path/to/2.7/python python_projects 您可以创建一个bash别名: alias py27=/path/to/2.7/python 等等 py27 python_proje

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

python_projects # python variable.py
它使用Python版本3,我想把它改为2.7,你试过一行了吗

例如:

#!/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
读者文摘:有很多解决方案。

你试过一句台词吗

例如:

#!/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.0,那么以下内容应该是正确的:

  • python3
    始终运行您最好的3.x版本
  • 要么:
    • python
      运行您最好的2.x版本,或
    • python
      运行与
      python3
      相同的东西,但是
      python2
      运行您最好的2.x版本
因此,您可以始终使用
python2
(如果存在),如果不存在则使用
python

此外:

  • python2.7
    始终运行您最好的2.7.x版本
所以,你可以用它


如果
python2.7
python2
,甚至
python
都不在您的路径上,或者您进行了某种奇怪的安装,违反了预期的规则(或者您的发行版为您这样做),您可以始终按完整路径指定python。例如,不要使用
/usr/bin/env-python
/usr/local/bin/python
或任何您正在使用的东西,而是使用
/opt/local/python2.7/bin/python
,或安装在任何地方。

如果您以默认方式安装了python2.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
都不在您的路径上,或者您进行了某种奇怪的安装,违反了预期的规则(或者您的发行版为您这样做),您可以始终按完整路径指定python。比如说,不要使用
/usr/bin/env python
/usr/local/bin/python
或任何你正在使用的东西,而是使用
/opt/local/python2.7/bin/python
,或者安装在任何地方。

假设你在linux机器上,你可以在不同的python版本之间向swtich的.zshrc/.bashrc文件添加类似的内容

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
py27
py33
。这也同时照顾到了pip和iPython

假设您在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
py27
py33
。这也同时照顾到了pip和iPython

别名是实现IMHO的方法,但您也可以确保python2.7可执行文件的位置位于路径中python3.x可执行文件之前。这也行。也许可以将别名放在.bash_配置文件中,这样您就不必每次都要重做它。别名是通往IMHO的途径,但您也可以确保python2.7可执行文件的位置位于路径中python3.x可执行文件之前。这也行。也许可以将别名放在.bash_配置文件中,这样您就不必每次都重复它了。