gpt4 book ai didi

python - 如何设置要在 python 脚本中使用的 conda 环境

转载 作者:行者123 更新时间:2023-12-01 15:00:25 31 4
gpt4 key购买 nike

我需要在相同的环境中运行一个脚本 workflow.py使用 python 2.7 和另一个脚本 stepA.py使用 python 3.7。

假设 stepA.py来自 workflow.py ,一种可能是设置两个 conda env,一个使用 python2.7,另一个使用 python3.7,运行 workflow.py在 py2env 中写一些类似的东西
subprocess.run('bash -c "source activate py3env; stepA.py"', shell=True)
workflow.py推出 stepA.py .

我不喜欢这个解决方案,相反我想修改第一行 workflow.pystepA.py通过指示要使用的python版本,例如

#!/usr/bin/env python2.7

而不是简单地
#!/usr/bin/env python

在我看来,第二种解决方案更加原子化和干燥。

我试过类似的东西
$ conda --version
conda 4.7.12
$ conda create -n py3env python=3.8
[...]
$ conda env list
# conda environments:
base * /sto1/ref/miniconda2
py3env /sto1/ref/miniconda2/envs/py3env
$ cat ./test.py
#!/usr/bin/env conda run -n py3env python
import os,sys
print sys.executable
print os.__file__
$ ./test.py
/usr/bin/env: conda run -n pheatmap_1 python: No such file or directory

所以 conda run 解决方案似乎不起作用。

在脚本内部(在 #! 行或使用其他策略)设置环境的正确方法是什么?

最佳答案

你应该给出你的python的完整路径,它应该作为可执行文件给出

例如:

#!/usr/bin/env /user/intelpython/latest/envs/py3env/bin/python
code

在此 /user/intelpython/latest/envs/py3env/bin/python (我到特定 python 的完整路径)可以是 python3 或 2
要获得绝对路径,请激活环境并使用 which python命令

关于python - 如何设置要在 python 脚本中使用的 conda 环境,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59213111/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com