2010-10-20 38 views
1

好的,这是一个非常愚蠢的问题,但只是我有点困惑。 我有一个文件结构,它看起来像这样: -Python进口 - 需要有人来检查这个请

-Mainapplication 
    -models.py 
-Helpingmodules 
    -Folder1 
    -module1.py 

现在我不得不进口车型到Module。因此,在module1.py我只是做: -

from Mainapplication import models 

现在,这确实工作得很好,但我得到的感觉,这可能是错误的。有人能让我知道这是否是正确的方法。

+3

“我感觉它可能是错的”为什么?它完美的作品。你担心你的'PYTHONPATH'设置吗? – 2010-10-20 10:47:33

+1

除了将主应用程序导入到帮助模块之外,我看不到任何问题 – SilentGhost 2010-10-20 10:49:18

+0

谢谢S.Lott和SilentGhost – Rasmus 2010-10-20 11:16:00

回答

2

导入没有问题,但是如果你的包的名称是准确的,这看起来像是一个设计缺陷,因为你正在破坏代码的可重用性;我希望一个“帮助模块”包可以独立于他们正在帮助的应用程序(尽管在包名称太模糊的情况下,我可能会失去其用途)。

+0

谢谢Woobie,是的包的名称是不正确的。但是是可重用性的概念指出我在这里的东西.. – Rasmus 2010-10-20 11:11:53

1

没有什么错与您的import

可以说:

import Mainapplication.models 

但随后你会在每次使用它的时候,如引用models其包前缀:

Mainapplication.models.foo("bar") 

你所的方式这样做可以让你使用以下通常较好的形式:

models.foo("bar") 

对于完整的故事,你可以read the documentation

+0

谢谢戴夫,一个! – Rasmus 2010-10-20 11:12:11