1

在这里尝试解决包管理问题时,我了解到我PYTHONPATH用于访问 site-packages 目录之外的包的方式可能存在问题。

当该目录不在 python site-packages 目录中时,尝试wxPython从其版本化目录文件夹名称(即)导入包(例如)中的模块时,我收到一个导入错误。wx-2.8-msw-unicode

要重新创建问题:在 python 目录之外创建一个目录,例如C:\foo. 下载wxPython,并将其放在该目录中(给C:\foo\wx-2.8-msw-unicode)。如果你喜欢,可以添加更多。将目录添加C:\foo到您的PYTHONPATH环境变量中。打开一个新的 python 交互式 shell 并运行

import sys
for i in sys.paths:
    print i

验证路径是否存在(它是),然后

import wx

我收到导入错误。我究竟做错了什么?这种行为正确吗?

4

1 回答 1

0

据我了解,这是预期的行为。C:\foo在您的 Pythonpath 中,但它不包含可导入的 wx 模块。为了import wx成功,它必须直接在 Pythonpath 上的目录之一中找到包含文件wx.(py/pyc/pyd/dll/so)的目录之一或目录。wx__init__.py

安装程序通常会进行整理,确保它位于您可导入的位置。如果你想自己做,你必须确保它wx最终在一个可导入的位置。

于 2011-07-07T21:37:52.183 回答