在python代码中激活另一个conda env

时间:2019-01-29 22:14:04

标签: python conda

我需要同时使用python2.7和python3.6进行任务。我用conda创建了两个python env。我知道如何使用Shell脚本来控制代码运行并在不同的环境之间切换。假设我需要先运行python2.7代码,然后再运行python 3.6。我的问题是我可以先运行python 2.7代码,然后在python 2.7代码中直接激活python3.6 conda env,然后运行python 3.6代码吗?

1 个答案:

答案 0 :(得分:0)

对于您的任务,仅使用以下命令从python调用shell即可更改环境:

your python 2.7 code

os.system("Command to change your kernel")  

your python 3.6 code

也许您需要添加一些额外的代码来获取输出或新输​​入(如果有) 并继续运行代码。

如果这不起作用,则可能更容易直接从命令中调用python 3.6函数:

os.system("python3 '/function36.py' ")

或者也可以使用2.7代码中的函数subprocess.call

return_code = subprocess.call("python3 '/function36.py'", shell=True)  

使用Python 3.6,您还可以使用subprocess.run()