2016-08-22 142 views
3

我看到一個較老的問題,建議使用pip.main(包),但是這並不是升級包。我找不到任何東西。提前致謝。用pip從代碼內升級包

+1

你真的不應該從內部代碼更新包,除非它是嚴格必要的。它可能導致不兼容性錯誤。您可以使用系統調用 –

+0

@J。 C. Rocamonde如何使用系統調用? – dcarroll9999

+0

我想比我的更好的答案解決了這個問題,但你可以使用python'subprocess'模塊 –

回答

3

嘗試pip.main(['install', '--upgrade', package])改爲。 pip.main只需要使用與命令行版本完全相同的參數。

+0

不應該在引號之間打包嗎? –

+0

我假設'package'是一個變量,其中包含OP想要升級的任何程序包的名稱。 – spruceb

+0

是的,'package'是一個內含字符串的變量。這是班級; 'def pipInstall(package): pip.main(['install','--upgrade',package])' – dcarroll9999