问题描述
python
程序命令执行Python 2. Python 3可以使用python3
命令执行。 Python 3如何使用python
命令执行?
最佳解决方法
一个简单的安全方法是使用别名。将其放入~/.bashrc
或~/.bash_aliases
文件中:
alias python=python3
在文件中添加上述内容后。运行以下命令
source ~/.bash_aliases or source ~/.bashrc
例:
$ python --version
Python 2.7.6
$ python3 --version
Python 3.4.3
$ alias python=python3
$ python --version
Python 3.4.3
次佳解决方法
[2016年6月]有关过渡信息的推荐位置是官方Ubuntu Python页面。
For both Ubuntu and Debian, we have ongoing project goals to make Python 3 the default, preferred Python version in the distros.
What this does not mean:
/usr/bin/python
will point to Python 3. No, this is not going to happen (unless PEP 394 advocates otherwise, which is doubtful for the foreseeable future)./usr/bin/python
and/usr/bin/python2
will point to Python 2.7 and/usr/bin/python3
will point to the latest supported Python 3 version.Python 2 will be removed from the archive. No, this is not going to happen. We expect Python 2.7 to remain supported and available in Ubuntu for quite a long time, given that PEP 373 promises upstream bug fix maintenance support until 2020.
由于其他软件包依赖性,不建议更改符号链接,但他们“有持续的项目目标,使Python 3成为默认的首选Python版本”。
对于使用CLI的用户,比如@Radu Rădeanu,我建议在用户的~/.bashrc
,.bash_aliases
文件(包括~/.bash_profile
在内的不同文件都加载在一起,仅用于组织目的)中添加一个别名。 Python virtual environments也很好。
如:
alias python=python3
要么
alias python='/usr/bin/python3'
然后脚本可以从类似如下开始:
#!/usr/bin/env python
代替
#!/usr/bin/python3
我仍然建议在脚本中使用#!/usr/bin/python3
(或#!/usr/bin/env python3
)以实现更简单的cross-compatibility。
使用env
很适合与虚拟环境混合使用。
第三种解决方法
更新:我了解到,这是错误的方式,因为Python2和Python3不可互换。
您可以尝试命令行工具update-alternatives
。
$ sudo update-alternatives --config python
如果你得到错误“没有python的替代品”,那么用下面的命令自己设置一个替代品:
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 10
相应地将路径/usr/bin/python3
更改为所需的Python版本。
第四种方法
Ubuntu以及其他Linux发行版在很大程度上依赖于Python 2.7的许多应用程序和命令。如果您将”python”的默认引用更改为Python 3.x,则许多Python函数将开始引发断言错误。
例如,在Ubuntu上,除非您直接编辑文件并将shebang更改为引用’#!/usr/bin/env python2.7’,否则’pip’将不再正确运行。在RHEL(红帽企业Linux)中,如Red Hat,Fedora和CentOS,’Yum’命令也依赖于Python 2.7。
我的要点是,你会导致大量的代码开始抛出断言错误,所以你可以在终端中输入’python’来引用Python 3.x.
在终端中使用’python3’命令以及在Python 3.x文件中使用shebang ‘#!/usr/bin/env python3’会更好。