这个Python文件夹结构有什么问题?

时间:2016-02-23 18:47:58

标签: python-3.x directory-structure

我以为我理解了Python 3的模块模型,但也许不是。

我有一棵树:

root
\-- pmlr
    \-- __init__.py * empty
    \-- pmlr.py     * full of definitions

当我在root中,并且我从Python3 shell import pmlr运行时,pmlr只有这些属性(默认包__dict__):< / p>

pmlr.__cached__         pmlr.__dir__(           pmlr.__format__(        pmlr.__hash__(          pmlr.__lt__(            pmlr.__package__        pmlr.__repr__(          pmlr.__str__(
pmlr.__class__(         pmlr.__doc__            pmlr.__ge__(            pmlr.__init__(          pmlr.__name__           pmlr.__path__           pmlr.__setattr__(       pmlr.__subclasshook__(
pmlr.__delattr__(       pmlr.__eq__(            pmlr.__getattribute__(  pmlr.__le__(            pmlr.__ne__(            pmlr.__reduce__(        pmlr.__sizeof__(        
pmlr.__dict__           pmlr.__file__           pmlr.__gt__(            pmlr.__loader__         pmlr.__new__(           pmlr.__reduce_ex__(     pmlr.__spec__           

这意味着python认为pmlr,但它无法找到任何属性。

如果我cd pmlr然后导入它,则会显示所有模块的属性。如果我import pmlr.pmlr root,则会显示所有模块的属性。

如何将我的模块从根目录导入为其文件夹(pmlr),而不是pmlr.pmlr?我认为__init__.py就是这样做的。

1 个答案:

答案 0 :(得分:0)

Rogalski在评论中解释了这一点:

  

__init__.py中使用from pmlr import *

相关问题