2013-07-16 97 views
0

我导入模块Python模块进口

from Boards import CheckerBoardModule 

CheckerBoardModule包括一个名为CheckerBoard

当我想用它的类,我需要调用CheckerBoardModule.CheckerBoard,而不仅仅是CheckerBoard。例如

class SnakesAndLaddersBoard(CheckerBoardModule.CheckerBoard): 

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

为什么我就不能使用CheckerBoard,没有CheckerBoardModule前缀?

回答

4

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

from Boards.CheckerBoardModule import CheckerBoard 

所有这些进口呢,除了执行模块,如果还没有已经发生,被绑定在自己的命名空间中导入的名称。 from foo import barbarbar绑定到foofrom foo import bar as baz可让您指定一个新的名称。