0

我正在使用安装了 python、django 和 pinax 的 Windows 机器。

我可以从任何正常位置导入模块(即使它不在实际安装的目录中)。但是,当我在为 Pinax 构建的虚拟环境中时,我无法导入这些相同的模块。

这可能是什么原因?有哪些可能的解决方案?

4

2 回答 2

2

要诊断导入失败,请尝试使用 -v 切换到 python:

python -v my_program.py

它将显示其导入模块的尝试。

于 2010-07-28T01:48:34.007 回答
1

正如总结所说,

[[virtualenv]] 创建一个有自己的安装目录的环境,它不与其他 virtualenv 环境共享库(并且可选地也不使用全局安装的库)。

然而,您似乎对您构建的 virtualenv“不共享库”感到惊讶......当不共享是virtualenv的全部意义时,您为什么会感到惊讶?!-)

一旦你做了一个python virtualenv.py ENV, 继续引用我已经指出你的摘要,“如果你使用 ENV/bin/easy_install 包将被安装到环境中”。

因此,这样做以安装您需要在虚拟环境中导入的所有包。

(假设您已使用该--no-site-packages选项创建虚拟环境,则您还需要对“站点范围”安装的所有软件包执行此操作,因为该选项的目的是排除它们以便更好地控制和隔离)。

于 2010-07-28T02:25:20.120 回答