windows上的virtualenv激活

2024-06-02 07:49:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经在Windows7上安装了Virtualenv1.10,上面有Python2.7。

我已经创建了一个名为TESTENV的虚拟环境。它位于C:\

如果我运行C:\TESTENV\Scripts\activate,然后键入python,后跟:

import sys
print sys.prefix

它输出C:\TESTENV,如expected所示。

但是如果我运行D:\virtualenv_test.py(这是一个包含我上面使用的两行代码的脚本),它会输出C:\Python27

我试着在脚本中添加一个shebang行,但这在Windows上不起作用。

为什么脚本不在虚拟环境的上下文中运行?


Tags: pytestimport脚本prefix键入virtualenvsys
1条回答
网友
1楼 · 发布于 2024-06-02 07:49:46

virtualenv不会更改启动文件的默认应用程序。

安装Python时,安装程序将.py.pyw文件与适当的C:\Python27\python.exeC:\Python27\pythonw.exe应用程序相关联。因此,当您只运行D:\virtualenv_test.py时(在您的cmd中),cmd会查找注册表并找到与.py文件关联的应用程序,然后使用该应用程序运行该文件。在这种情况下,就是先前安装的C:\Python27\python.exe

virtualenvactivate只在PATH环境变量的开头添加特定的虚拟环境python解释器,因此当您在cmd中键入python时,将执行相应的python.exe

因此,解决问题的方法是将脚本运行为:

python D:\virtualenv_test.py

在你激活环境之后。

相关问题 更多 >