繁体   English   中英

如何确保python脚本使用虚拟环境?

[英]How to make sure python script uses virtual environment?

我创建了虚拟环境并激活它。 已安装的软件包但无法从虚拟环境中导入它们。

pip freeze:

在此处输入图片说明

但是尝试导入模块时出错:

Traceback (most recent call last):
  File "z:\Documents\Python\Projects\ProjectName\tempCodeRunnerFile.py", line 1, in <module>
    import paramiko
ModuleNotFoundError: No module named 'paramiko'

如何确保 .py 文件使用虚拟环境?

另外如果我跑

import sys
print(sys.path)

结果:

'C:\\Users\\Username\\AppData\\Local\\Programs\\Python\\Python37\\lib\\site-packages' 

所以它不使用虚拟环境,对吗?

在许多情况下,没有必要激活虚拟环境。 通常,您可以在不激活虚拟环境的情况下从任何地方执行以下操作:

  • C:\\path\\to\\venv\\Scripts\\python.exe -m pip somecommand
  • C:\\path\\to\\venv\\Scripts\\python.exe different\\path\\to\\script.py
  • 等等。

此外,您可以将python.exe的绝对路径指定为 Python 脚本顶部的 she-bang,并直接执行脚本(例如双击),而无需显式调用 Python。

#!/path/to/venv/bin/python3

print("Hello world")

参考资料

您应该调用安装在您的环境中的python 那是

source myenv/bin/activate
python path/to/script.py

在 Unix 中,您可以在脚本顶部添加以下#!/usr/bin/env python ,这将允许您在不指定python二进制文件的情况下运行它。

source myenv/bin/activate
path/to/script.py

可能以相同不同的方式在 Windows 中工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM