Python Import NameError

时间:2015-09-01 20:06:03

标签: python import flask

我有一个烧瓶应用程序结构如下:

/public_html
    /content
        /accounts
            __init__.py
            /classes
                __init__.py
                mycode.py
            /forms
                __init__.py
                myform.py
            /routes
                __init__.py
                myroute.py
        /activity
        /comments
        /media
        /messages
        ...
        __init__.py
    /media
    __build__.py
    __config__.py

public_html / content中的 init 看起来像这样:

from accounts.classes.mycode import *
from accounts.forms.mycode import *
from accounts.routes.mycode import *
#..... etc .... until I've imported all the packages 

并且在每个文件中,比如mycode.py我有一个循环导入回到这样的内容:

from content import *
#The rest of my code goes here.

它对我来说效果很好,但是我遇到了一个构造其余导入的问题,因为我需要调用模块来说:accounts.routes.mycode 在它实际导入之前。结果我最终得到NameError: global name 'functionincode' is not defined

我可以通过在没有冲突的情况下导入不同的函数来暂时解决问题,但我的代码变得讨厌。我真的不希望这些大量的进口产品都以特定的顺序相互依赖。

我有什么方法可以重新构建进口产品,以免出现冲突?我正在考虑每个软件包,例如content.accounts init .py导入其中的所有内容,然后在每个accounts.classes.mycode.py中导入其他所有内容,例如:

from accounts import *
from activity import *
etc ...

但是我希望能有一个更容易解决的问题。

谢谢!

0 个答案:

没有答案