iT邦幫忙

1

code悟人生 [python] #1- 建置虛擬環境(virtual environment)

Chen 2022-08-17 17:51:143572 瀏覽

是不是再針對我!/images/emoticon/emoticon18.gif

有沒有再抄人家code的時候,發現為啥人家那邊可以用,我這邊一弄就fail 呢?
當然是故意的!因為你是抄襲仔啊( 威,又再亂說
其實原因有很多種,其中幾種狀況可能就是package版本不相容,或是你這邊根本沒那個package啦!

虛擬環境 - 就像菜籃一樣

如同網上學做菜一樣,它要紅糖,你籃子只有黑糖! 它說沙茶加少許,實際上要15g,你直接加一整包,而且還是過期的, 這要是能成功簡直是上天開恩啊!

解決辦法

  1. 籃子只裝需要用到的菜! (virtual environment)
  2. 叫廚師食譜寫詳細一點! (ex:requirement.txt)

建立虛擬環境的幾種方法

幫你編菜籃啦,夠貼心了吧!阿菜你自己買。
選喜歡的工具就好,都用感覺太三心二意了!阿筆者的話這邊的都用過(你還敢說!!!

  1. conda
  2. pipenv
    • pipenv完善了pip與virtualenv的一些缺陷
  3. virtualenv
    • 目前許多人在用的工具

簡易操作

conda

下載

windows
macOS
Linux

確認

# 確認一下是否已經擁有了 
$conda –V 
#若想更新
$conda update conda
# 已經安裝的虛擬環境
conda env list

建置環境

$conda create --name <environment_name> python=<版本> 
$conda create --name <env> --file requirements.txt # add package from requirements.txt

啟動/退出/刪除

# 啟動
$source activate  <environment_name>  #linux/macOs
$activate  <environment_name>  #windows 
$deactivate # 退出
$conda env remove -n <environment_name> --all # 刪除

package管理

$conda install  <package_name>  
$conda list  #查看安裝的package
$conda deactivate # 退出
$pip install -r requirements.txt #從txt載檔案
$conda remove -n <environment_name> --all # 刪除

產生requirement list

#for conda 
$conda list -e > requirements.txt
# for pip 
$conda install pip #如果沒有安裝的話先安裝,有就跳過
$pip freeze > requirements.txt

pipenv

使用文件

安裝

$pip install pipenv

建置環境

$pipenv --two  # 使用當前系统的Python2 
$pipenv --three  # 使用當前系统的python3
$pipenv --python 3 #使用python3
$pipenv --python 3.6  #特定版本

啟動/退出/刪除

$pipenv shell # 啟動
$exit # 退出
$pipenv --rm # 刪除

package管理

$pipenv install <package> 
$pipenv install #若只有單獨一個requirements.txt,就會自動創建成Pipfile 
$pipenv install -r path/to/requirements.txt  #指定特定requirements.txt
$pipenv uninstall package1 package2 package3 # 刪除

產生requirement list / Pipfile.lock

$pipenv lock --requirements > requirements.txt # 產生 requirements.txt 
$pipenv lock -r # generate Pipfile.lock,

virtualenv

使用文件

安裝

$pip install virtualenv

建置環境

$python -m venv <environment_name>
virtualenv --python=/opt/python-3.6/bin/python <environment_name> #指定版本

啟動/退出/刪除

# linux/macOS
$source ./<environment_name>/bin/activate
#windows
$.\<environment_name>\Scripts\activate.bat 
#powershell
$cd <environment_name>/Scripts
$activate
$deactivate # 退出
$sudo rm -rf <environment_name>  # 刪除 或直接刪除folder也行

package管理

$pip install <package> 
$pip install -r path/to/requirements.txt  #指定requirements.txt
$pip uninstall package1 package2 package3 # 刪除

產生requirement.txt

$pip freeze > requirements.txt
$type requirements.txt # 確認檔案內容

有一句俗語嘛,雞蛋不要放同一個籃子,好好分裝,人生會很美好~

若有地方錯誤,再麻煩告知,會立即修正,感謝您!❤❤

參考

https://zhuanlan.zhihu.com/p/163023998
https://medium.com/python4u/%E7%94%A8conda%E5%BB%BA%E7%AB%8B%E5%8F%8A%E7%AE%A1%E7%90%86python%E8%99%9B%E6%93%AC%E7%92%B0%E5%A2%83-b61fd2a76566

tags: python

圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言