使用Windows,当在文本编辑器(Atom)中执行时,我无法使python脚本使用虚拟环境。
我知道如何使用命令行来使脚本使用虚拟环境(通过激活虚拟环境并运行脚本),但我希望能够在文本编辑器中工作。
我尝试包括shebang #!/usr/bin/env python
来指示我的脚本使用虚拟环境(如建议的here),但是Windows可能实际上不支持shebangs(来自here和{ {3}})。我试图直接说明我的虚拟环境的路径,但不清楚如何做到这一点(我尝试了#!"C:\Users\...\my_project\venv\Scripts\python.exe"
的变体)
请注意,我的文件结构是一个文件夹( my_project ),其中包含两个文件夹 venv (我的虚拟环境)和 my_code (其中 my_script.py )。
以下脚本从命令行执行时会打印来自虚拟环境的路径,而从文本编辑器执行时会显示系统的路径。另外,我已全局安装了sklearn,但未在虚拟环境中安装,并且从命令行(按需要)执行时,sklearn无法导入,而从文本编辑器中执行时,则无法导入。
#!/usr/bin/env python
import sys
print(sys.path)
from sklearn.cluster import KMeans
如何获取脚本以识别要使用的虚拟环境?
答案 0 :(得分:0)
您需要制作一个虚拟环境,然后将其激活以使脚本使用虚拟环境。要在原子上执行此操作,请遵循this guide
在命令行中遵循以下引号应该可以正常工作。 (一旦激活,先cd /path/to/script
,然后再python myscript.py
)
引用here
要创建虚拟环境,请确定要放置虚拟目录的目录,然后使用带有目录路径的脚本作为脚本运行venv模块:
python3 -m venv tutorial-env
创建虚拟环境后,可以激活它。
在Windows上,运行:
tutorial-env\Scripts\activate.bat