Python模块导入

时间:2013-07-16 09:19:23

标签: python python-3.x python-import

我正在导入模块

from Boards import CheckerBoardModule 

CheckerBoardModule包含一个名为CheckerBoard

的类

当我想使用它时,我需要拨打CheckerBoardModule.CheckerBoard,而不仅仅是CheckerBoard。 e.g。

class SnakesAndLaddersBoard(CheckerBoardModule.CheckerBoard):

    def __init__(self,width,canvas):
        CheckerBoardModule.CheckerBoard.__init__(self,width,canvas)
        self.snakes  = []
        self.ladders = []

为什么我不能在没有CheckerBoard前缀的情况下使用CheckerBoardModule

1 个答案:

答案 0 :(得分:4)

因为您导入了CheckerBoardModule模块对象,所以不是 CheckerBoard类。如果您只想使用CheckerBoard,请导入

from Boards.CheckerBoardModule import CheckerBoard

除了执行模块(如果尚未发生)之外,所有导入操作都会将导入的名称绑定在您自己的命名空间中。 from foo import barbar绑定到bar绑定的任何foofrom foo import bar as baz允许您指定名称。