我的问题是当我尝试从命令行运行python脚本时,如下所示;从命令行使用Python2.7(Linux)
python_projects # python variable.py
它使用Python版本3,我想改变这2.7
我的问题是当我尝试从命令行运行python脚本时,如下所示;从命令行使用Python2.7(Linux)
python_projects # python variable.py
它使用Python版本3,我想改变这2.7
您已经尝试了shebang线?
例如:
./path/to/2.7/python python_projects
你可以做一个bash别名:
alias py27=/path/to/2.7/python
等瞧
#!/path/to/2.7/python
没有从调用2.7解释要么阻止你
py27 python_projects
读者摘要:很多解决方案。
如果你有安装在默认的方式都的Python 2.7和Python 3.something,下面应该是真实的:
python3
始终运行你最好的3.x版python
运行你最好的2.x版本,或者python
运行与python3
一样的东西,但是python2
运行你最好的2.x版本因此,如果存在的话,python
如果不是你可以随时使用python2
。
另外:
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机器上,你可以在你的.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可执行文件之前。那也行得通。 – reptilicus 2013-02-27 21:14:17
可能会将别名放在.bash_profile中,这样您就不必每次都重做它。 – ryrich 2013-02-27 21:17:52