python - Windows 上的 virtualenv 激活

标签 python windows-7 path virtualenv system-paths

我已经在装有 Python 2.7 的 Windows 7 机器上安装了 virtualenv 1.10。

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

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

import sys
print sys.prefix

它按照预期输出 C:\TESTENV

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

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

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

最佳答案

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

安装 Python 时,安装将 .py.pyw 文件与适当的 C:\Python27\python.exeC:\Python27\pythonw.exe 应用程序。因此,当您(在您的 cmd 中)仅运行 D:\virtualenv_test.py 时,cmd 会查看注册表并找到与 .py 文件关联的应用程序,然后运行该应用程序的文件。在本例中,它是之前安装的 C:\Python27\python.exe

virtualenv activate 仅在 PATH 环境变量的开头添加特定的虚拟环境 python 解释器,因此当您键入 pythoncmd 中,您将得到适当的 python.exe 执行。

所以您的问题的解决方案是将您的脚本运行为:

python D:\virtualenv_test.py

激活环境后。

关于python - Windows 上的 virtualenv 激活,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18462728/

相关文章:

windows-7 - Windows 7 小工具 - 用于开发的编程语言

c# - C# TCP 服务器软件在 Windows 7 Pro 上的最大 TCP 客户端连接数

r - R中根据文件名定义文件路径

Python:生成二维点/簇

windows-7 - 类型不匹配的VB6错误处理

python - 属性错误 : 'Response' object has no attribute 'text'

MATLAB:将 genpath 与部分路径结合使用

python - 如何用python在windows中打开文件?

python - 如何在 anaconda 提示符下运行 powershell 脚本?

python - 如何从 django 模板中删除所有 html 标签?