2016-04-29 114 views
1

我很困惑,如何處理python的模塊。有多種安裝軟件包的方法。我目前使用三種方法。管理Python模塊101

1)Linux發行

目前的軟件包,許多最流行的模塊/包,像IPython中,可以通過分配軟件包管理器進行安裝。這使我可以在系統中訪問該包。我不必對我的PATH,用戶訪問權限做任何事情。它只是工作,直到現在,這是我最喜歡的方法。

2)PIP或暢達

至於開始使用包,這不是那個著名的,他們沒有一個分發包。所以我必須在別處獲得它們。到現在爲止,如果我在發行版中找不到它,我可以使用pip來安裝任何其他必要的軟件包。 Conda是另一種選擇。

我的問題:

什麼是「最佳」方法。我的意思是在用戶看來,所有可能性都完全一樣。我想用一個,所以我不會感到困惑,但正如我所說的,並非所有的東西都可用。我現在被迫全部使用它們。這非常煩人,特別是在更新,衝突,用戶權限和訪問,路徑變量等方面,甚至沒有提到python 2.7和3.x「戰爭」。

那麼你怎麼做呢?你如何維護一個有很多不同包管理器的系統(即桌面)。你堅持只做pip/conda,爲你自己安裝一切(即你的主目錄)嗎?

+0

這是一個很好的問題,也是一個長期困擾Python(而且不僅僅是)的問題。但是這個問題不太適合Stack Overflow,因爲它主要是基於觀點的。對於什麼是值得的,我認爲你已經盡力做到了。 – Cyb3rFly3r

+0

是的,這是一個基於意見的,但我想聽取意見,並從他們自己選擇:) – hr0m

+0

不質疑你想要什麼或你的權利問:它只是不符合[準則](http:///stackoverflow.com/help/how-to-ask)。 – Cyb3rFly3r

回答

2

Python的文檔建議PIP安裝蟒機型:

PIP是優選的安裝程序。從Python 3.4開始,Python二進制安裝程序默認包含它。

有關更完整的概述,請查看documentation on installing modules

在處理您提到的衝突方面,您應該使用虛擬環境,或者使用pyenvvirtualenv。虛擬環境允許您爲不同的項目使用不同的模塊或版本的模塊。使用虛擬環境還允許您在其他地方(例如,在服務器上)複製該環境。