python2和python3完全兼容_MacOS下,Python2和Python3完美兼容使用(轉)

本文介绍了如何在MacOS上通过pyenv管理Python2和Python3的多个版本,包括安装、切换和升级pip,以及在不同Python版本中安装第三方库如bs4的方法。
摘要由CSDN通过智能技术生成

問題闡述:

MacOS默認Python版本是2.7.10,隨着Python3的進一步占有市場,Python2.7也將在2020年結束維護,所以在同一台電腦上安裝多個Python版本勢在必行。

一、pyenv的使用

首先,安裝pyenv,參考地址。

1,安裝Homebrew,參考地址;

2,安裝pyenv:

$ brew update

$ brew install pyenv

3,添加pyenv init到shell里

$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

4,重啟shell,使配置生效

然后,pyenv基本使用方法

1,列出系統安裝的所有Python版本

ritchdeMacBook-Pro:~ ritch$ pyenv versions

* system (set by /Users/ritch/.pyenv/version)

3.7.0

2,列出當前Python版本

ritchdeMacBook-Pro:~ ritch$ pyenv version

system (set by /Users/ritch/.pyenv/version)

3,列出pyenv可供安裝使用的Python版本

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ pyenv install -l

Available versions:

2.1.3

2.2.3

2.3.7

...

...

3.6.5

3.6.6

3.7.0

3.7-dev

3.8-dev

767967ce4d98f0ae9b55082672227965.gif

4,安裝Python版本

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ pyenv install 3.6.6

python-build: use openssl from homebrew

python-build: use readline from homebrew

Downloading Python-3.6.6.tar.xz...

-> https://www.python.org/ftp/python/3.6.6/Python-3.6.6.tar.xz

Installing Python-3.6.6...

python-build: use readline from homebrew

Installed Python-3.6.6 to /Users/ritch/.pyenv/versions/3.6.6

767967ce4d98f0ae9b55082672227965.gif

5,全局切換Python版本

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ python

Python 2.7.10 (default, Oct 6 2017, 22:29:07)

[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> exit()

ritchdeMacBook-Pro:~ ritch$ pyenv versions

* system (set by /Users/ritch/.pyenv/version)

3.6.6

3.7.0

ritchdeMacBook-Pro:~ ritch$ python

Python 2.7.10 (default, Oct 6 2017, 22:29:07)

[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> exit()

ritchdeMacBook-Pro:~ ritch$ pyenv global 3.6.6

ritchdeMacBook-Pro:~ ritch$ python

Python 3.6.6 (default, Sep 27 2018, 13:24:00)

[GCC 4.2.1 Compatible Apple LLVM 9.1.0 (clang-902.0.39.2)] on darwin

Type "help", "copyright", "credits" or "license" for more information.

>>> exit()

767967ce4d98f0ae9b55082672227965.gif

其中Python版本控制,分為三個場景:

global:全局范圍內Python版本的展示和修改。

local:當前目錄下Python版本的展示和修改。

shell:當前shell會話Python版本的展示和修改,適用於腳本執行的情況,當前會話結束后,Python版本回復原樣。

二、多版本情況的pip使用

Python好用的地方是,有很多成熟的第三方庫。安裝了多個Python版本,對應的pip怎么使用呢?

首先,安裝

正常情況下,Python2 >= 2.7.9 或者 Python3 >= 3.4,pip已經被安裝好了。

保證Upgrading pip:

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ python -V

Python 3.6.6

ritchdeMacBook-Pro:~ ritch$ python -m pip install --upgrade pip

Collecting pip

Using cached https://files.pythonhosted.org/packages/5f/25/e52d3f31441505a5f3af41213346e5b6c221c9e086a166f3703d2ddaf940/pip-18.0-py2.py3-none-any.whl

Installing collected packages: pip

Found existing installation: pip 10.0.1

Uninstalling pip-10.0.1:

Successfully uninstalled pip-10.0.1

Successfully installed pip-18.0

767967ce4d98f0ae9b55082672227965.gif

如果系統里沒有安裝好pip,參看安裝:

curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py

python get-pip.py

然后,使用

Python 3.6.6,使用pip安裝第三方庫bs4:

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ pyenv global 3.6.6

ritchdeMacBook-Pro:~ ritch$ python -V

Python 3.6.6

ritchdeMacBook-Pro:~ ritch$ python -m pip install bs4

Collecting bs4

Downloading https://files.pythonhosted.org/packages/10/ed/7e8b97591f6f456174139ec089c769f89a94a1a4025fe967691de971f314/bs4-0.0.1.tar.gz

Collecting beautifulsoup4 (from bs4)

Downloading https://files.pythonhosted.org/packages/21/0a/47fdf541c97fd9b6a610cb5fd518175308a7cc60569962e776ac52420387/beautifulsoup4-4.6.3-py3-none-any.whl (90kB)

100% |████████████████████████████████| 92kB 537kB/s

Installing collected packages: beautifulsoup4, bs4

Running setup.py install for bs4 ... done

Successfully installed beautifulsoup4-4.6.3 bs4-0.0.1

767967ce4d98f0ae9b55082672227965.gif

Python 3.7.0,使用pip安裝第三方庫bs4:

767967ce4d98f0ae9b55082672227965.gif

ritchdeMacBook-Pro:~ ritch$ pyenv global 3.7.0

ritchdeMacBook-Pro:~ ritch$ python -V

Python 3.7.0

ritchdeMacBook-Pro:~ ritch$ python -m pip install bs4

Collecting bs4

Using cached https://files.pythonhosted.org/packages/10/ed/7e8b97591f6f456174139ec089c769f89a94a1a4025fe967691de971f314/bs4-0.0.1.tar.gz

Collecting beautifulsoup4 (from bs4)

Using cached https://files.pythonhosted.org/packages/21/0a/47fdf541c97fd9b6a610cb5fd518175308a7cc60569962e776ac52420387/beautifulsoup4-4.6.3-py3-none-any.whl

Installing collected packages: beautifulsoup4, bs4

Running setup.py install for bs4 ... done

Successfully installed beautifulsoup4-4.6.3 bs4-0.0.1

767967ce4d98f0ae9b55082672227965.gif

三、總結

pyenv配合pip,可以很好解決Python多版本的問題。

同時也可以在輕量級編輯器(VS Code、Sublime)上很好的配合使用,VS Code如下截圖:

cd381c228ebaaa8098a78c09c3ecfad2.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值