因某些需求,需要安裝tensorflow
,很自然地在終端敲下了以下命令:
pip install tensorflow
然後。。。
好傢伙???
居然沒有??
因為是python 3.9
,去pypi
搜尋了,居然還真沒有支援的,最高只有python 3.8
:
於是便考慮乙個多版本的python
環境,碰巧就在github
上看到了乙個22.3k的東西:
這就是pyenv
,乙個簡單的python
版本管理器,可以輕鬆地在各個python
版本之間進行切換。
好了廢話不說,進入正題。
安裝有兩種方式:
curl | bash
# 或curl -l | bash
手動安裝大致分為三步:
筆者系統manjaro
,可以直接yay
安裝:
yay -s pyenv
其他系統的可以使用apt search
/yum search
等看看軟體包倉庫有沒有,有的話直接安裝即可,沒有的話,可以clone
安裝:
git clone ~/.pyenv
(這一步是可選的)接著就是編譯動態bash
擴充套件進行加速:
cd ~/.pyenv && src/configure && make -c src
官方解釋說,不用害怕編譯失敗,因為仍然會正常工作。
這一步就是把pyenv
以及更新後的path
配置成環境變數,官方文件按照shell
型別進行了分類,根據自己情況選擇即可。
2.2.2.1bash
echo 'export pyenv_root="$home/.pyenv"' >> ~/.bash_profile
echo 'export path="$pyenv_root/bin:$path"' >> ~/.bash_profile
2.2.2.2zsh
echo 'export pyenv_root="$home/.pyenv"' >> ~/.zshrc
echo 'export path="$pyenv_root/bin:$path"' >> ~/.zshrc
2.2.2.3fish shell
set -ux pyenv_root $home/.pyenv
set -ux fish_user_paths $pyenv_root/bin $fish_user_paths
配置完環境變數後還要進行初始化操作,文件同樣按shell
型別進行了分類。
2.2.3.1bash
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile
2.2.3.2zsh
echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.zshrc
2.2.3.3fish shell
echo -e '\n\n# pyenv init\nif command -v pyenv 1>/dev/null 2>&1\n pyenv init - | source\nend' >> ~/.config/fish/config.fish
重新開啟乙個終端,輸入pyenv
,輸出如下資訊就表明安裝成功了:
雖然上面說了這麼多命令,但實際使用頻率高的命令並不多,主要有以下幾個:
一般安裝的步驟如下,先使用
pyenv install -l
查詢需要安裝的python
版本:
這裡還有一大串,就不全部截圖了,比如需要安裝3.6.12
版本:
pyenv install 3.6.12
安裝之後可以使用
pyenv versions
檢視安裝的版本,這裡筆者安裝有兩個,乙個是系統自帶的python3.9
,乙個是pyenv
安裝的python3.6
:
接著使用
pyenv global 3.6.12
切換到新安裝的版本:
這樣就切換到了新安裝的版本,如果不是全域性替換而是區域性替換的話可以使用pyenv local
/pyenv shell
。
要注意的是切換版本後pip
的版本也會不一樣,而且兩個版本使用pip
安裝的包也是獨立的:
3、知乎-python環境memo
Linux anaconda 多環境管理
conda version檢視conda版本 conda update conda公升級conda conda create n py3 python 3.6建立乙個新環境,n後面接自定義的名字,python後接版本 source activate py3啟用建立的新環境 conda info en...
python環境管理
不論linux windows,用conda實現環境管理為最優策略。安裝conda後,conda list可檢視現有環境 初始只有乙個 可以按需創造多個環境,新建環境在conda的env目錄下 新環境需要新增包,conda install可新增,但通常conda install裡的包會少 這時,最優...
Python使用pyenv實現多環境管理
1 背景 概述 因某些需求,需要安裝 tensorflow 很自然地在終端敲下了以下命令 1pip install tensorflow 然後。好傢伙?居然沒有?因為是 python 3.9 去 pypi 搜尋了,居然還真沒有支援的,最高只有 python 3.8 於是便考慮乙個多版本的 pytho...