相对Python模块

时间:2016-09-16 19:18:16

标签: python python-2.7

我在理解python模块导入系统方面遇到了很多麻烦。

我正在尝试创建一个简单的文件夹结构,如下所示。

SomeModule
   __init__.py
   AnotherModule
       AnotherModule.py
       __init__.py
       Utils
           Utils.py
           __init__.py

要使用SomeModule,我可以这样做:

SomeModule.Foo()

现在在AnotherModule.py里面我想导入我的Utils目录。

我该怎么做

import SomeModule.AnotherModule.Utils.Foo

为什么我不能这样做

import Utils.Foo

2 个答案:

答案 0 :(得分:0)

要缩短您在代码中必须调用的实际功能名称,您可以随时执行以下操作:

from SomeModule.AnotherModule.Utils import *

虽然这仍然不允许您在脚本顶部使用较短的导入语句,但您只需通过调用即可访问.Utils中的所有功能他们的功能名称(即foo(x)而不是SomeModule.AnotherModule.Utils.foo(x)

冗长的import语句的部分原因归于@wim的评论。通过在python解释器中键入import this来查看。

答案 1 :(得分:0)

SongNode
在SomeModules中{p> static SongNode nillNodeSong