![](/img/trans.png)
[英]Why Conda cannot call correct Python version after activating the environment?
[英]Activating conda environment within Python
conda是否提供從正在運行的Python程序中激活環境的方法?
例如,使用virtualenv創建的每個虛擬環境( venv
)都有一個腳本venv/bin/activate_this.py
(假設您在Linux上),該腳本可用於在運行的Python程序中激活venv
,如下所示:
activate_this = '/full/path/to/venv/bin/activate_this.py'
with open(activate_this) as file_:
exec(file_.read(), dict(__file__=activate_this))
我只是想知道我是否需要為此工作改用virtualenv的activate_this.py
(virtualenv和conda環境的結構略有不同,因此無法按原樣工作)還是有一種現有的方法。
我認為這是不可能的。 我不是該領域的專家,但是虛擬環境的python解釋器是不同的。 您還可以看到該文件只會更改您的系統路徑,因此要使用的python解釋器將指向虛擬環境的打開位置。 因此,我認為您實際上必須使用虛擬環境的python解釋器在腳本中生成一個新的python進程。 像這樣:
import subprocess
subprocess.run(['/full/path/to/venv/bin/python', 'path/to/script.py'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.