ubuntu修改默认python为python3

Posted 阳光_你好

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu修改默认python为python3相关的知识,希望对你有一定的参考价值。

1 ubuntu默认python

ubuntu 大多镜像版本都会携带python解释器:

  • ubuntu16.04 python指令进入python2.7,默认python3.5
    如果没有python我们需要自己安装,ubuntu16.04安装python需要下载源码编译安装:
    python下载地址
    选择心仪的python版本:
tar -zxvf Python-3.6.9.tgz
cd Python-3.6.9
./configure
make && make install
  • ubuntu18.04 python指令进入python2.7,默认python3.6.9
    18.04系统安装python相对简单了
sudo apt-get update
sudo apt-get install python2.7 -y 	# 安装python2.7
sudo apt-get install python-pip -y 	# 安装python下载库pip工具
sudo apt-get install python3.6 -y  	# 安装python3.6
sudo apt-get install python3-pip -y # 安装python3下载库pip3工具

2 修改默认python脚本

(1)查看python可执行文件位置

➜  bin whereis python   
python: /usr/bin/python3.5m /usr/bin/python3.5 /usr/lib/python2.7 /usr/lib/python3.5 /etc/python3.5 /usr/local/bin/python3.6 /usr/local/bin/python3.6m-config /usr/local/bin/python3.6m /usr/local/bin/python3.6-config /usr/local/lib/python3.6 /usr/local/lib/python3.5

(2)我的python3.6可执行文件在/usr/local/bin/python3.6,我们只需要将/usr/bin/python删掉,创建指向python3.6的软连接即可:

➜  /usr sudo rm /usr/bin/python
➜  /usr sudo ln -s /usr/local/bin/python3.6 /usr/bin/python

(3)终端执行python指令

➜  /usr python
Python 3.6.9 (default, Oct 14 2022, 11:19:55) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 

没有问题,大功告成

更改Ubuntu默认python版本的方法

1.查看基本信息

# 列出所有已安装python
ls /usr/bin/python* 

#查看默认的 Python 版本信息:
python --version

2.基于用户修改 默认Python 版本

想要为某个特定用户修改 Python 版本,只需要在其 home 目录下创建一个 alias(别名) 即可。
该操作执行:(打开该用户的 ~/.bashrc文件,添加新的别名信息来修改默认使用的 Python 版本)

alias python=‘/usr/bin/python3.7‘

3. 在系统级修改 Python 版本

问题

如果出现以下所示的错误信息,则表示 Python 的替代版本尚未被 update-alternatives 命令识别。

$ update-alternatives --list python
update-alternatives: error: no alternatives for python

解决:想解决这个问题,我们需要更新一下替代列表,将 python2.7 和 python3.4 放入其中。

sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
 #update-alternatives: using /usr/bin/python2.7 to provide /usr/bin/python (python) in auto mode
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 2
 #update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode

--install 选项使用了多个参数用于创建符号链接。最后一个参数指定了此选项的优先级,如果我们没有手动来设置替代选项,那么具有最高优先级的选项就会被选中。这个例子中,我们为 /usr/bin/python3.4 设置的优先级为2,所以update-alternatives 命令会自动将它设置为默认 Python 版本。

python --version
Python 3.4.2

接下来,我们再次列出可用的 Python 替代版本。

update-alternatives --list python
/usr/bin/python2.7
/usr/bin/python3.4

现在开始,我们就可以使用下方的命令随时在列出的 Python 替代版本中任意切换了。

update-alternatives --config python

移除替代版本

一旦我们的系统中不再存在某个 Python 的替代版本时,我们可以将其从 update-alternatives 列表中删除掉。例如,我们可以将列表中的 python2.7 版本移除掉。

update-alternatives --remove python /usr/bin/python2.7
 
#update-alternatives: removing manually selected alternative - switching python to auto mode
#update-alternatives: using /usr/bin/python3.4 to provide /usr/bin/python (python) in auto mode

方法2、移除软连接

rm -rf /data/logs
 
ln -s /temp/logs /data/logs

解决软连接ln报错-bash: /usr/local/bin/mysql: Too many levels of symbolic links

以上是关于ubuntu修改默认python为python3的主要内容,如果未能解决你的问题,请参考以下文章

更改Ubuntu默认python版本的方法

ubuntu默认的Python版本号修改

修改ubuntu默认python版本

转:ubuntu16安装python3.6并将环境设置为系统默认

在Ubuntu 16.04 安装python3.6 环境并设置为默认

ROS修改:ubuntu系统更改默认python版本(重要操作)