代码之家  ›  专栏  ›  技术社区  ›  Tom

Windows上的virtualenv:不超过已安装的包

  •  4
  • Tom  · 技术社区  · 15 年前

    virtualenv

    • 导入django
    • django.VERSION版本

    我得到“1.1.1决赛”。Django安装在我的环境的site packages目录中,根目录中的init文件显示它是1.2。但是,即使我创建了带有--no site packages标志的环境,环境也会回到1.1.1。我搞砸了什么?

    2 回复  |  直到 13 年前
        1
  •  9
  •   Carl Meyer    15 年前

    根据您在bitbucket中提交的bug,看起来您正在使用PYTHONPATH环境变量指向包含一些包的目录,包括Django 1.1.1。根据设计,PYTHONPATH总是放在sys.path的第一位,即使您激活了virtualenv(因为PYTHONPATH在您的直接和直接控制下,人们使用它进行本地重写)。

        2
  •  2
  •   Ned Batchelder    15 年前

    您可以使用一些工具来诊断这些问题:

    要知道django来自哪里,打印 django.__file__

    sys.path . 这是一个目录列表。

    要在导入发生时查看导入,请将python启动为 python -v ,并且您将看到大量有关导入包的位置的调试信息。