2017-07-17 33 views
2

我想完全掌握如何使用Python的虛擬環境。我明白他們爲程序員完成了什麼 - 允許您爲不同的項目在本地安裝不同的依賴項,而不會發生衝突。生產中是否需要Python虛擬環境?

但是,我不明白的是,這如何轉化爲將生產Python程序部署到最終用戶。假設我已經制作了一個程序,它可以正常工作,並且已經完成調試並準備就緒。我想把這個提供給人們。人們是否必須下載它,把它們放到它自己的虛擬環境中,pip install從那裏開始,然後每次他們想要運行該程序的時候去找activate腳本?我覺得,使用Linux,我的機器上至少必須有一些Python程序,我知道我不這樣做 - 我只是sudo apt install該程序,它運行。

回答

2

您可以在軟件包中包含依賴關係。即下載庫並將文件夾的內容複製到軟件包目錄中。是的,虛擬環境在生產中很有用。儘管如此,並不在你的例子中。但是,如果您在單個服務器上部署多個Web應用程序,它將非常有用。

+0

與在虛擬環境中使用'pip install'有什麼不同?你到底要下載這些庫,把它們放到你自己的目錄中,然後導入它們,如果不是'pip'呢?另外,其他語言會遇到這種麻煩,還是僅僅是Python?對不起,有很多問題!我正在教自己的編程,並試圖理解我未來職業生涯中的這些事情。 :) – steelstring94

+0

其他語言使用外部庫,但將它們與庫一起打包。我的例子中的區別在於用戶不必使用pip安裝,只需運行程序而不必擔心依賴關係。 pip只是從PyPI下載軟件包,您也可以自己下載軟件包:https://pypi.python.org/pypi –

+0

「其他語言使用外部庫,但將它們與庫一起打包」 - 使用什麼庫?而且,Python的庫不是外部的?我不確定一個圖書館怎麼可能是內部的,除非它是你自己寫的。 – steelstring94