如果我使用的是virtualenv,我会激活项目的虚拟环境,然后安装我正在开发模式下开发的软件包.类似于以下内容:
workon superbad pip install -e fnawesome
这允许我的软件包fnawesome
可以在我的superbad
虚拟环境中使用任何代码更新进行访问.如果我切换到任何其他环境,包括默认环境,superbad
id无法访问.
人们如何使用conda进行类似的设置?
好的,我想出了问题背后的问题.
如果您创建一个conda环境,请确保包含pip和ipython.否则,它将不会设置指向这些实用程序的环境特定版本的路径.
所以:
conda create -n superbad scikit-learn source activate superbad pip install -e fnawesome # (installs in default env b/c pip is global pip) ipython # runs global ipython with access to global site packages python # runs the environment's python with no access to fnawesome
这按预期工作:
conda create -n superbad scikit-learn pip ipython source activate superbad pip install -e fnawesome # installing into superbad site packages ipython # runs superbad ipython python # runs the environment's python with access to fnawesome source deactivate ipython # no access to fnawesome
您可以配置将自动安装到任何conda环境中的默认软件包列表
conda config --add create_default_packages pip --add create_default_packages ipython
将让这个conda create
总是包含pip
和ipython
在新的环境中(此命令是一样的加入
create_default_packages: - ipython - pip
到你的.condarc
文件).
要创建没有这些的环境,请使用conda create --no-default-packages
.