Could not import python modules: apt, apt_pkg. Please install python3-apt package
假設原本機子上面就有python2.7,然後我們使用pyenv安裝了python3.6
Method one
下面我們爲python2.7和3.6分別設置權重:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
sudo update-alternatives --install /usr/bin/python python /opt/pipenv/pyenv/versions/3.6.2/bin/python3.6 10
然後我們可以使用下面的命令查看所有在update-alternatives裏面的python版本
sudo update-alternatives --config python
但是像上面這樣設置權重了後,如果要更新或者安裝包,可能會報錯:Could not import python modules: apt, apt_pkg. Please install python3-apt package
,所以我們需要下面的命令來撤銷權重設置:
sudo update-alternatives --remove-all python
這樣就是刪除了所有對python的指向,如果使用python會報錯,所以還需要下面這一步將python繼續指向python2.7
sudo ln -s python2.7 /usr/bin/python
下面這種刪除權重的方法會更好,保留了python2.7的權重:
update-alternatives --remove python /opt/pipenv/pyenv/versions/3.6,.2/bin/python3.6
Method two
在使用的過程中發現這個方法沒有方法一好用
首先編輯文件: vi ~/.bashrc
加上一行:
alias python="/opt/pipenv/pyenv/versions/3.6.2/bin/python3.6"
最後再使文件配置生效:. ~/.bashrc