Ubuntu Python环境配置

Ubuntu16.04 自带Python2和Python3

1
2
3
4
$ python --version
Python 2.7.12
$ python3 --version
Python 3.5.2

1. pip环境

1.1. 安装pip

默认pip没有安装,输入pippip3,会提示你要安装对应的包

1
2
3
4
5
6
$ pip
The program 'pip' is currently not installed. You can install it by typing:
apt install python-pip
$ pip3
The program 'pip3' is currently not installed. You can install it by typing:
apt install python3-pip

安装pip

1
2
apt-get install python-pip
apt-get install python3-pip

检查是否安装成功

1
2
3
4
$ pip --version
pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)
$ pip3 --version
pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

1.2. 更新pip

1
2
python -m pip install --upgrade pip
python3 -m pip install --upgrade pip

1.2.1. 错误 Traceback (most recent call last): File “/usr/bin/pip”

更新pip之后,可能会出现以下问题,这是pip的一个BUG

1
2
3
4
5
6
7
8
9
10
$ pip
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
ImportError: cannot import name 'main'
$ pip3
Traceback (most recent call last):
File "/usr/bin/pip3", line 9, in <module>
from pip import main
ImportError: cannot import name 'main'

编辑 /usr/bin/pip/usr/bin/pip3

1
2
3
4
5
6
7
8
# ==============  以下是原本的内容
from pip import main
if __name__ == '__main__':
sys.exit(main())
# ============== 以下是修改之后的内容
from pip import __main__ # 修改
if __name__ == '__main__':
sys.exit(__main__._main()) # 修改

2. 默认Python

Ubuntu下,python命令对应py2,python3命令对应py3

2.1. 利用alternatives机制修改默认python

修改python3为默认,数字大的优先级高

1
2
update-alternatives --install /usr/bin/python python /usr/bin/python2 100
update-alternatives --install /usr/bin/python python /usr/bin/python3 150

设置之后,python和pip都默认对应py3

2.2. 修改命令文件修改默认python

1
2
rm -rf /usr/bin/python  # 删除python命令
ln -s /usr/bin/python3 /usr/bin/python # 设置软链接 python ==> python3
panchaoxin wechat
关注我的公众号
支持一下