如何不污染服務(wù)器的python的包環(huán)境??

一 問題

為啥突然有這篇推文呢?主要是最近在用服務(wù)器運行一些程序的時候出現(xiàn)了以下情形:

哎,明明上次這個腳本還能運行的,為啥這次突然不行?

腳本沒問題呀,也沒有修改過

明白了,上次運行其他程序時又裝了新的包

錯誤是部分包升級了,那降級就好了

...(過了許久)...

經(jīng)過九九八十一難,終于降級成功

成功運行,也耗費了半天時間

因此,才出現(xiàn)這一篇推文,也想著為讀者們提供一點借鑒的意義。

二 解決方案

其實,這個問題共有五種解決方案:

第一種:不停的升級降級,如下文。優(yōu)點是不用考慮其他,缺點是比較費時

第二種:將包安裝到指定目錄,本文介紹的。優(yōu)點是需要騰出空間安裝包,缺點是包的引用會較為復(fù)雜

第三種:使用conda。這種目前未嘗試,但是聽說部分包的安裝會污染系統(tǒng)環(huán)境

第四種:使用docker。這種是我比較推薦的,不污染系統(tǒng)環(huán)境,并且即裝即用,只是會比較耗內(nèi)存。下一篇推文將介紹

第五種:一個程序一個電腦,土豪必備,缺點就是比較廢棄

下面的話就介紹第二種方法

首先,我們需要指定一個目錄用于新包安裝目錄

其次,將每個安裝的包都安裝到這一目錄

第三,在需要調(diào)用這個包時,通過以下命令將包路徑添加到系統(tǒng)中。PS:路徑結(jié)尾不需要添加路徑符號‘/’

export?PYTHONPATH="${PYTHONPATH}:you_python_package_absolute_path"

需要注意的是該變動僅在當(dāng)前終端存在的前提下才有效,關(guān)閉終端后無效。不過,這對于一次程序的提交已然足夠了

最后,快樂的運行你的程序。

三 慣例小結(jié)

其實吧,沒有一種解決方法是全能的,重要的是什么解決方法最有效,用起來也最順手。

另外,細(xì)節(jié)部分可見我的簡書主頁,并且我開發(fā)的Multi-omics Hammer軟件和Multi-omics Visual軟件也歡迎大家使用

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

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

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