【问题标题】:Activating venv and conda environment at the same time同时激活venv和conda环境
【发布时间】:2022-11-11 18:54:21
【问题描述】:

我是一个初学者,有点“玩弄”环境。我遇到了一种情况,似乎我激活了两个环境: 我创建一个目录,使用 venv 创建一个环境,激活它,然后 conda 激活我之前创建的 conda 环境。这些是命令:

mkdir dummie_directory
cd dummie_directory
python -m venv .
Scripts\activate
conda activate old_env

在此之后,我的命令行的开头如下所示:

(old_env)(dummie_directory) C:\Users\....

这是否意味着两个环境都处于活动状态? 是否有任何预期用途,或者它很可能会导致已安装的软件包之间发生某种冲突/冲突?

谢谢

【问题讨论】:

    标签: python conda environment python-venv virtual-environment


    【解决方案1】:

    不,这并不意味着它们都被激活了。只有一个人可以在 PATH 中拥有优先级,这是我认为对“激活”含义的最简单定义,从功能上讲。 PS1 字符串(即 shell 的提示字符串)中的指示符没有得到稳健的管理。这两个环境管理器根本不知道彼此,并且仅在调用activatedeactivate 过程时才对字符串进行操作。没有任何动态监控特定环境是否保持活跃。

    我不会依赖你在这种状态下观察到的任何行为。它没有定义的规范,也不打算像这样使用。

    【讨论】:

      【解决方案2】:

      我要补充一点,它与仅激活最后一个环境的唯一区别是,当最后一个环境被停用时,第一个环境会再次被重新激活。因此,它使用先进先出的逻辑来激活环境。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2019-12-12
        • 2016-06-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-23
        • 1970-01-01
        • 2019-08-03
        相关资源
        最近更新 更多