我正在使用安装了python,django和pinax的Windows机器。
我可以从任何正常位置导入模块(即使它不在精确安装的目录中)。但是,当我在为Pinax构建的虚拟环境中时,我无法导入这些相同的模块。
可能的原因是什么?有哪些可能的解决方案?
答案 0 :(得分:2)
要诊断导入失败,请尝试使用-v开关到python:
python -v my_program.py
它将显示导入模块的尝试。
答案 1 :(得分:1)
正如the summary所说,
[[virtualenv]]创造了一个环境 有自己的安装 目录,不共享 图书馆与其他virtualenv 环境(也可以不是 使用全局安装的库 任一)。
然而,你似乎很惊讶你所建造的virtualenv“不共享图书馆”...为什么你感到惊讶,当不共享是整个观点的virtualenv? - - )
一旦你做了python virtualenv.py ENV
,继续引用我已经指出的摘要,“如果你使用ENV / bin / easy_install,那么软件包将安装到环境中”。
因此,这样做是为了安装您需要在虚拟环境中导入的所有软件包。
(假设您已使用--no-site-packages
选项来创建虚拟环境,您还需要为“站点范围”安装的所有软件包执行该操作,因为该选项的目的是排除它们为了更好的控制和隔离)。