[英]Global Module Installation for All Environments Python (Anaconda)
[英]Persisting module installation across new python virtual environments
對於背景,我主要在終端工作並使用 vim 編輯代碼。 對於長期的 Python 項目,我使用詩歌管理 venvs 並在源代碼控制中鎖定文件。
我喜歡在我工作的幾乎每個 venv 中安裝一些模塊,例如 ipython/ptpython、(pytest-)icdiff 和其他“生活質量”擴展,我不需要強加給不使用的項目合作者我的工作流程。 我可以使用發行版的包管理器(或 pipx)在全局范圍內安裝 ptpython,但是當我運行它時,它不會在本地 venv 內運行,並且本地依賴項無法訪問。 這變得令人討厭,因為我會在鎖定文件更改時定期重新創建 venv。 現在我有一個 shell 腳本來安裝這些東西,但這感覺就像一個黑客。
一個理想的解決方案可能是創建類似 venv 模板的方法,類似於 git templatedir 選項。 Python 有這樣的東西嗎?
這並沒有直接回答也許,但我認為 anaconda 環境是要走的路。 您可以創建不同的“基礎”環境,然后克隆它們。 然后,您可以根據需要在新的克隆環境中使用 pip 添加更多包,從而不更改基礎,而是在新環境中具有可定制性。
試試這個答案: https : //stackoverflow.com/a/40702703/7654532
這個問題不是 Python venv 特有的,它也存在於 rvm 和 nvm 中。 只需將包安裝在全局 Python 命名空間下並將其添加到您的PYTHONPATH
這樣如果該包未安裝在本地存儲庫中,Python 就會回退到您的全局 Python 命名空間,而無需修改存儲庫鎖定文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.