我是一名Java程序员,我开始用python开发一些模块。
我试图用软件包来划分抽象层,但是不幸的是,根软件包(hokuspokus.py)上有一个类试图
内包(videofactory.py)中的类,会引发错误ImportError:没有名为media.videofactory的模块。

我还进行了一次测试,所有文件都放在同一个程序包(hokuspokus)上,并且一切运行正常:(

我正在将Python 2.7,Windows和Aptana Studio 3与PyDev结合使用。

我检查了我的PYTHONPATH,项目的根文件夹在那里作为源文件夹。
我使用此模块和pydev configs的所有代码创建了一个google代码项目:http://code.google.com/p/hokuspokus-py/source/checkout

Package Structure:
HokusPokus (source folder)
|
----hokuspokus (root package)
    |
    --- media (inner package)
    |   |
    |   ----videofactory.py
    |
    |
    ---- hokuspokus.py

最佳答案

尝试:

from media.videofactory import VideoFactory


从模块中导入具体的类
如果要导入模块中的所有元素,则可以使用:

from media.videofactory import *


但这不是最好的方法。

09-26 11:36