Mac環(huán)境下使用pyenv和pyenv-virtualenv管理python環(huán)境

前言

Mac上會自帶Python2和Python3各一個(gè)版本,但最好別動,因?yàn)檫@是給MacOS用的,不是給你用的。

我們可以使用pyenv和pyenv-virtualenv安裝自己的Python版本和Python虛擬環(huán)境。

pyenv用來管理python版本

pyenv-virtualenv用來管理某個(gè)python版本對應(yīng)的虛擬環(huán)境

我們選用手動安裝的方式,你也可以用homebrew安裝

1、安裝pyenv并且配置

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

如果你的shell環(huán)境是.bash

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile

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

source??~/.bash_profile

如果你是.zsh

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.zshrc

echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.zshrc

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

source??~/.zshrc

到這里就安裝完成且配置好了,

2、安裝自己用的Python版本

查看可以安裝的Python版本。

pyenv install --list

我選擇3.8.6版本進(jìn)行安裝。

pyenv install 3.8.6

安裝過程中如果碰到報(bào)錯(cuò)? ?error: Unexpected output of 'arch' on OSX

解決方案是? ?arch -arch x86_64 env PATH=${PATH/\/opt\/homebrew\/bin:/} pyenv install 3.8.6

安裝完成后,目錄結(jié)構(gòu)如下:

使新安裝的Python版本全局生效

pyenv global 3.8.6

此時(shí)我們再輸入?python3,就可以看到Python版本已經(jīng)變了。

3、安裝virtualenv并且配置

我們以插件形式把virtualenv安裝到.pyenv目錄

git clone https://github.com/pyenv/pyenv-virtualenv.git? ??~/.pyenv/plugins/pyenv-virtualenv

如果你的shell環(huán)境是.bash

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

然后重啟shell就可以啦

exec "$SHELL"

如果你是.zsh

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

然后重啟shell就可以啦

exec "$SHELL"

至此,virtualenv已經(jīng)安裝完畢,此時(shí)的目錄結(jié)構(gòu)如下:

4、創(chuàng)建某個(gè)Python版本對應(yīng)的某個(gè)Python虛擬環(huán)境

首先創(chuàng)建一個(gè)虛擬環(huán)境 ,命令格式為?pyenv virtualenv <版本> <名稱>

pyenv? ?virtualenv? ?3.8.6? ? 3.8.6-zidonghua-ios

此時(shí)再看目錄結(jié)構(gòu):

激活這個(gè)虛擬環(huán)境 ,命令格式為?pyenv activate <名稱>? ?(反激活為 pyenv deactivate)

pyenv activate 3.8.6-zidonghua-ios

我們就可以在這個(gè)Python虛擬環(huán)境下愉快的玩耍啦!

可以使用 pip3 安裝各種Python庫,安裝的庫都是?3.8.6-zidonghua-ios 專屬的。

然而此時(shí)我遇到了下面的報(bào)錯(cuò)

于是乎我谷歌了一下,在?3.8.6-zidonghua-ios 文件夾下有個(gè)文件叫?pyvenv.cfg ,把里面的?include-system-site-packages = false 改為?true就好啦

5、虛擬環(huán)境里安裝各種Python工具庫

在這里我遇到坑了。。。

首先虛擬環(huán)境已經(jīng)激活了,which pip3 也是指向虛擬環(huán)境的pip3,但每次 pip3 install 都是安裝在了系統(tǒng)目錄下,而不是虛擬環(huán)境目錄下。最后排查了半天,發(fā)現(xiàn)時(shí)因?yàn)槲壹恿?--user

去掉 --user就好了。

強(qiáng)烈建議直接用PyCharm打開一個(gè)工程,關(guān)聯(lián)到這個(gè)虛擬環(huán)境

讓PyCharm關(guān)聯(lián)到工程里的?requirements.txt 自動安裝是最好的了。

但是要保證pip3的源已經(jīng)切到公司私有源了,執(zhí)行 pip3 config list 就可以看到啦。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容