2014-04-15 44 views
26

我通過pip install something安裝了一些軟件包。我想編輯包something的源代碼。它在哪裏(在Ubuntu 12.04上)以及我每次編輯源代碼並運行它時如何重新加載它?Python:如何編輯已安裝的軟件包?

目前我正在編輯源代碼,然後一次又一次地運行python setup.py,結果相當麻煩。

+0

'dpkg的查詢-L <軟件包>'然後編輯文件? –

+1

Ubuntu Generic(我也期待更新的版本)將pip軟件包安裝到/usr/local/lib/python2.7/dist-packages,並將軟件包安裝到/usr/lib/python2.7/dist-packages –

回答

4

您可以編輯安裝在/usr/local/lib/python2.7/dist-packages/中的文件。請注意,您將不得不使用sudo或成爲root。 更好的選擇是使用virtual environment進行開發。然後,您可以在虛擬環境中編輯使用您的權限安裝的文件。

+1

我正在使用mkvirtualenv,使用-no-site-packages選項,安裝pip並安裝'something'。但是我沒有看到它在virtualenv裏面安裝的文件,我可以編輯 – KJW

23

實際上,你不應該編輯已安裝的軟件包,而應該安裝分叉版本的軟件包。

如果您需要經常編輯代碼,你最好不要通過pip install something安裝包和「.../site_packages/......」

編輯代碼相反,你應該把源代碼下一個開發目錄,並安裝它

python setup.py develop 
# or 
pip install -e path/to/SomePackage 
# Or use a vcs at the first place 
$ pip install -e git+https://github.com/lakshmivyas/hyde.git#egg=hyde 

將您的更改放入版本控制系統,並告訴pip明確安裝它。

參考: Edit mode

+3

我已經使用'pip install -e/path/SomePackage /'安裝了它。我在裏面導航到這個目錄的'/ src /'並編輯一個文件。但是,當我從終端運行'SomePackage'時,它並不反映這種變化。 – KJW

+0

什麼是/ src /? –

+0

它是源代碼的位置,它有我編輯過的'.py'文件。 – KJW

相關問題