我有多个python项目,每个项目都有自己的虚拟环境。另外我有一个全球python环境。我想在虚拟/全局环境之间共享相同的包文件,而不是多次复制它们(如果可能)。
Environment Packages
----------------------------------------
GLOBAL: A B C D
VENV_1: A B C E
VENV_2: C D F
所以,在这个例子中:
C
的相同文件。GLOBAL
和VENV_1
也会共享A
和B
的文件。GLOBAL
和VENV_2
将共享D
。E
和F
未全局安装,因此虚拟环境将单独安装这些软件包。我尝试将virtualenv
与--system-site-packages
标记一起使用,但这只会使所有全局包在虚拟环境中可访问。因此,当我使用pip freeze
导出我的环境时,它将包含不必要的包。
如何使用精选软件包创建虚拟环境,以便在全局安装软件包时,该软件包的新文件副本不会在本地生成?这可以使用conda
或virtualenv
或任何其他工具吗?
我正在使用带有python 3.6的Windows 10。
答案 0 :(得分:0)
使用PyCharm你可以关联项目,你可以在你的venv / Source / activate.bat文件中操作PYTHONPATH变量,但我认为你正在咆哮错误的树。
我相信你在设置私有PyPi服务器(example)方面要好得多。通过这样做,您可以将pip-install添加到新项目中 - 具有版本控制和其他优点的附加优势。否则,您实际上只是撤消了虚拟环境首先为您提供的大部分封装优势。