MacOS下Python的多版本管理(pyenv)

2022-01-29 03:00:48 字數 2027 閱讀 4853

與windows下設定絕對路徑不同,pyenv使用了一種更優雅的方式來管理python的版本。pyenv通過在$path的最前面插入乙個墊片路徑(shims),例如:~/.pyenv/shims:/usr/local/bin:/usr/bin:/bin

。當查詢python的可執行檔案時,會自動跳轉到這個shims處,從而實現對python的多版本管理。下圖是官網給出的原理:

安裝pyenv的github位址 github.com/yyuu/pyenv ,在這個頁面中提供了其完整的安裝步驟,以及全部的命令。

其步驟大致分為以下幾步:

1.將pyenv檢出

$ git clone git: .pyenv

2.新增環境變數

$ echo 'export pyenv_root="$home/.pyenv"' >> ~/.bash_profile

$ echo 'export path="$pyenv_root/bin:$path"' >> ~/.bash_profile

這裡需要注意的是不同系統環境下環境變數配置檔案並不相同,mac下為bash_profile,而在其他linux版本中不盡相同。

$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

向shell新增pyenv init已實現命令的自動補全。

3.重啟shell

$ exec $shell

使用根據git上給出的文件,pyenv的命令只有11條:

使用頻率較大的幾條:

1.pyenv install

$ pyenv install -v 3.4.0
使用pyton-build安裝乙個python版本。-v引數顯示安裝進度,在網路環境不佳的狀態下,建議跟上-v引數。

git上給出的文件如下

$ pyenv uninstall 3.4.0
對應解除安裝乙個python版本

3.pyenv versions

$ pyenv versions
檢視當前python可以檢測到的所有版本,「*」表示該python版本當前處於啟用狀態。

4.pyenv version

$ pyenv version
檢視當前處於啟用狀態的python版本。

5.pyenv rehash

$ pyenv rehash
為目錄下的可執行檔案建立shims墊片,所以當安裝或解除安裝python版本以及通過pip等增加或刪除了可執行檔案包後,都需要執行此命令。

6.pyenv global/pyenv local/pyenv shell

$ pyenv global 3.4.0 #全域性

$ pyenv local 3.4.0 #本地

$ pyenv shell pypy-3.4.0 #shell

$ pyenv shell --unset

設定python的當前版本,設定後該版本將處於啟用狀態,優先順序順序為shell>local>globl。

MacOS下通過終端切換python版本

在macos下安裝了多個python版本後 如python2和python3 通過終端命令可以切換python版本 以python2和python3.7為例 在終端輸入 open bash profile寫入python的外部環境變數 注意python版本是3.7export path librar...

mac os下Python模組安裝錯誤

環境 mac os x 10.9.2 python版本 2.7.5 easy install對於python相當於apt之於ubuntu,安裝其他庫十分方便,但是最近安裝pil python imaging library 這個強大的圖形庫時竟然出錯了,十分抓狂。錯誤資訊如下 clang error...

mac os下py2app打包python程式

一開啟崩潰,對話方塊報了error並問是open console還是termite。死馬得當活馬醫,當然是open console了!結果開啟控制台看到的資訊是 網上搜了一通也不得要領,後來突然想起來,自己的python程式用了同目錄下的乙個txt檔案,是不是沒一起打包進去!往setup.py裡加了...