我有一个目录,其中有.py
个文件。每个文件都定义了一些类。我在目录中也有一个空的__init__.py
。模块没有属性
例如:
myproject
__init__.py
mymodule
__init__.py
api.py
models.py
views.py
我试图导入mymodule
和访问所有这些文件中定义的类:
from myproject import mymodule
print mymodule.api.MyClass
它给了我一个错误,指出mymodule
有没有属性api
。为什么?为什么我只能访问其中一个文件(models.py
)而不是其他文件?
In [2]: dir(banners)
Out[2]:
['__builtins__',
'__doc__',
'__file__',
'__name__',
'__package__',
'__path__',
'models']
我知道我可以做到这一点。是否可以使用虚线名称? – akonsu 2012-01-17 17:47:42
@akonsu,只需执行'import myproject.mymodule.api',然后通过'myproject.mymodule.api.MyClass'访问它。 – 2012-01-17 17:50:57
好吧,我认为这是一个关于一般语言的问题,而不是关于如何让我的代码工作。我很好奇这是否可以实现。我可以通过'mymodule.api ...'来访问我的课程吗?没有领先的'myproject'? – akonsu 2012-01-17 17:53:23