Anaconda 如何使用python代码激活Conda环境?

Anaconda 如何使用python代码激活Conda环境?,anaconda,conda,miniconda,Anaconda,Conda,Miniconda,如何使用python代码激活Conda环境? 以下是迄今为止我尝试过的一些方法,但它们似乎并没有改变我的环境: 导入操作系统 操作系统('conda activate envname') #不工作但不返回错误。 导入操作系统 stream=os.popen('conda activate envname') 输出=stream.read() #不工作但不返回错误。 导入子流程 process=subprocess.Popen(['conda','activate','envname'], s

如何使用python代码激活Conda环境? 以下是迄今为止我尝试过的一些方法,但它们似乎并没有改变我的环境:

导入操作系统
操作系统('conda activate envname')
#不工作但不返回错误。
导入操作系统
stream=os.popen('conda activate envname')
输出=stream.read()
#不工作但不返回错误。
导入子流程
process=subprocess.Popen(['conda','activate','envname'],
stdout=子流程.PIPE,
stderr=子流程.PIPE,
shell=True)
stdout,stderr=process.communicate()
#不工作但不返回错误。
那么,我如何使用python改变我的Conda环境,并且我希望它能在所有平台(linux、mac、windows)上运行呢

编辑1:
因此,从这一点看来,我所做的只是在子流程存在期间暂时改变环境。我想在我当前运行的shell中修改它…

不是100%确定,但我认为这是不可能的:如果运行python脚本,它将作为一个新进程运行,这个进程只能修改其子进程(因此它自己启动的事情)的环境变量,而不能修改其父进程(shell)。那么conda如何做到这一点呢?我可以像conda那样添加shell初始化以使其受支持吗?@AhmedKhalf我可以像conda那样添加shell初始化以使其受支持吗?你需要它做什么?我只是建议conda初始化的方式是如何改变当前shell的环境变量。你可以看看我的问题:不是100%确定,但我认为这是不可能的:如果你运行一个python脚本,它将作为一个新进程运行,这个进程只能为它的子进程(因此它自己启动的事情)修改环境变量,而不能为它的父进程(shell)修改环境变量。那么conda是如何做到的呢?我可以像conda那样添加shell初始化以使其受支持吗?@AhmedKhalf我可以像conda那样添加shell初始化以使其受支持吗?你需要它做什么?我只是建议conda初始化的方式是如何改变当前shell的环境变量。你可以看看我的问题: