2010-08-31 35 views
66

您好我正在嘗試python包裝使用setuptools和測試我安裝模塊在開發模式。 即刪除開發模式下安裝的python模塊

python setup.py develop 

這已將我的模塊目錄添加到sys.path。現在我想刪除模塊有沒有辦法做到這一點?

在此先感謝

+3

開始使用'pip'或其他具有卸載能力的管理器來管理python包。 – 2010-08-31 06:54:20

+1

@Tomasz你如何用'pip'做等效的'python setup.py develop'? – akaihola 2011-12-29 09:28:59

+6

pip install -e。 – 2011-12-29 11:22:12

回答

191

使用--uninstall-u選項develop,即:

python setup.py develop --uninstall 

這將易於install.pth將其刪除,並刪除.egg鏈接。它唯一不能做的就是刪除腳本(還)。

+1

請注意,如果您的開發版本安裝了一些可執行文件,並且您在'setup.py'中更改了它們,則應手動刪除它們。 – norok2 2016-08-02 08:26:12

+1

我按照解釋的方式運行它,在輸出中沒有錯誤,但我仍然能夠導入我的開發包在全球範圍內,它似乎還沒有被刪除。編輯:我知道爲什麼,我不得不像我在安裝過程中使用'--user'選項運行它:'python setup.py develop --uninstall --user' – Marek 2017-07-30 15:05:52

1

我以前有過類似的問題。我所做的是我加載了Python shell,導入了模塊,然後打印了它的__file__屬性。從那裏我只是刪除正在關聯的文件夾或文件。

你可能想要看的是使用virtualenv這個系統允許你創建一個與你的系統分開的Python實例。您在此實例中安裝或使用的任何模塊都是自包含的,包括模塊的版本。

我把我所有的項目都放在裏面有自己包含的virtualenv,它允許我安裝和使用我想要的任何模塊,而不用擔心從其他項目中搞砸模塊。

+0

那麼從下次我玩包時,我會使用這個,所以我不會搞砸我的系統Python。感謝您的信息 – copyninja 2010-09-01 06:16:12

11

在您的site-packages目錄中編輯easy-install.pth並刪除指向該包的開發版本的行。

+0

是的,我做到了這一點,另外一個文件是在那裏的名稱package-egg-link或我刪除的東西,現在引用模塊被刪除 謝謝:) – copyninja 2010-09-01 06:13:52

+10

「setup.py develop --uninstall 「這是爲你做的,請參閱@ pjeby的回答 – 2012-06-29 11:26:15

+2

當'develop --uninstall'失敗時,這對我有用,因爲我將項目拆分爲兩部分,而錯誤的部分保留在原始目錄中。 – 2013-03-14 10:13:41