配置独立于系统的PYTHON环境
配置獨(dú)立于系統(tǒng)的PYTHON環(huán)境
python 當(dāng)前用戶包
一種解決方案是在利用本機(jī)的python環(huán)境的基礎(chǔ)上,將python的包安裝在當(dāng)前user的.local文件夾下
一共有兩種方式來實(shí)現(xiàn)pip的時(shí)候安裝到當(dāng)前user
設(shè)置pip配置文件 pip.conf
一種是在~/.pip文件夾下的pip配置文件pip.conf中設(shè)置
加入
相當(dāng)于每次在執(zhí)行
# pip install package 命令的時(shí)候在 install 后面加 --prefix 參數(shù)指定 install 的路徑 pip install --prefix=~/.local packageTips:
python import 查找python package的流程
我的理解 TODO
參考資料 python import 機(jī)制
pip 參數(shù)
另一種實(shí)現(xiàn)是直接在pip install的時(shí)候加一個(gè) --user, 當(dāng)然這個(gè)也可以寫到pip.conf配置文件中去
pip install --user packagePYTHON 虛擬環(huán)境設(shè)置
因?yàn)樵趯?shí)際工作中經(jīng)常會(huì)遇到創(chuàng)建PYTHON虛擬環(huán)境的需求,每次都得去Google,很不方便,這里特意整理一下PYTHON虛擬環(huán)境創(chuàng)建的相關(guān)資料。
目錄:
虛擬環(huán)境有什么好處
- 常見的創(chuàng)建虛擬環(huán)境的工具
- virtualenv
- Anaconda
虛擬環(huán)境配置的一些小trick
虛擬環(huán)境 Cons
有時(shí)候我們可能手上會(huì)有多個(gè)python 項(xiàng)目,每個(gè)項(xiàng)目使用不同版本的python(python2.7 python3.5 etc.),并且每個(gè)python對(duì)應(yīng)于不同的包依賴,還有一種情況是我們可能沒有root權(quán)限,或者多人共用一個(gè)服務(wù)器,我們想自己創(chuàng)建一個(gè)獨(dú)立于其他用戶的python環(huán)境。
這個(gè)時(shí)候python虛擬環(huán)境機(jī)制就顯得很有用了,python虛擬環(huán)境主要有以下好處:
常見的創(chuàng)建虛擬環(huán)境的工具
virtualenv
virtualenv is a tool to create isolated Python environments.
virtualenv 主要解決了以下三個(gè)問題:
virtualenv 原理的一個(gè)說明:
virtualenv是如何創(chuàng)建“獨(dú)立”的Python運(yùn)行環(huán)境的呢?
原理很簡(jiǎn)單,就是把系統(tǒng)Python復(fù)制一份到virtualenv的環(huán)境,用命令source venv/bin/activate進(jìn)入一個(gè)virtualenv環(huán)境時(shí),virtualenv會(huì)修改相關(guān)環(huán)境變量,讓命令python和pip均指向當(dāng)前的virtualenv環(huán)境。安裝virtualenv
virtualenv 的安裝方式很多,可以通過pip安裝,也可以直接從git上下載,通過源碼安裝,還可以用easy_install安裝。
這里只介紹使用pip安裝的方法
安裝到全局
[sudo] pip install virtualenv安裝到當(dāng)前用戶
shell export PYTHONUSERBASE=$HOME pip install --user virtualenv
virtualenv 的簡(jiǎn)單使用
virtualenv 主要幾個(gè)指令是
創(chuàng)建env
virtualenv env_name --python=python3.x # virtualenv 會(huì)在當(dāng)前文件夾下創(chuàng)建一個(gè)名為env_name的文件夾作為虛擬環(huán)境env_name的目錄,并且將python3.x作為新創(chuàng)建環(huán)境的python解釋器進(jìn)入env
# 想要使用env,需要先active當(dāng)前環(huán)境,命令為: source env_path/bin/activate #Tips: 可以在~/.bash_aliases文件中設(shè)定一個(gè)alias,方便直接進(jìn)入env使用完env以后,可以通過deactivate退出當(dāng)前env
如果要?jiǎng)h除某個(gè)env,只需要 rm -r env_dir,刪除對(duì)應(yīng)的文件夾就可以了
還有一些virtualenv的擴(kuò)展包,進(jìn)一步集成了virtualenv的功能:virtualenvwrapper (能夠在一個(gè)文件夾下統(tǒng)一管理所有的env)
- 其他幾個(gè)小trick
- virtualenv 默認(rèn)不包含全局安裝的python 包
- 可以在env里面通過pip freeze > requirements.txt 來獲取當(dāng)前環(huán)境所有的python package的信息。這樣在下一次創(chuàng)建環(huán)境的時(shí)候就可以通過pip install -r requirements.txt直接快速安裝所有依賴包
Anaconda
Anaconda is the most popular python data science platform. (Introduced by the Anaconda website)
Anaconda Python 是專注于數(shù)據(jù)分析的Python發(fā)行版本,包含了conda、python等190多個(gè)科學(xué)包及其依賴項(xiàng)。
Anaconda分離python環(huán)境的原理和virtualenv基本一致,都是通過創(chuàng)建一個(gè)獨(dú)立的文件夾保存python環(huán)境。Anaconda相較于virtualenv不同的地方主要有以下幾點(diǎn):
Anaconda 常用指令
# 創(chuàng)建新環(huán)境 conda create -n env_name python=X.X #創(chuàng)建名為env_name,解釋器為pythonx.x的python虛擬環(huán)境 # env_name文件可以在Anaconda安裝目錄envs文件下找到。# 進(jìn)入python環(huán)境 # Linux source activate env_name # Windows activate env_name# 進(jìn)入python環(huán)境以后的一些命令 conda list # 查看當(dāng)前環(huán)境安裝了那些包 conda env list conda info -e # 查看當(dāng)前存在那些虛擬環(huán)境 conda install package # 安裝第三方python包 # 也可以直接使用pip命令安裝 pip install package# 刪除環(huán)境中的某個(gè)包 conda remove package pip uninstall package# 退出當(dāng)前虛擬環(huán)境 source deactivate # Linux deactivate # Windows# 刪除虛擬環(huán)境 conda remove -n env_name轉(zhuǎn)載于:https://www.cnblogs.com/yeyuan111/p/10083499.html
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的配置独立于系统的PYTHON环境的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 我的世界龙蛋怎么拿
- 下一篇: 利用python脚本程序监控文件被修改