1

我正在尝试像这样构建我的项目

app/
__init__.py
web/
    __init__.py
    web.py
database/
    __init__.py
    db.py

我只想从 to 导入几个类db.pyweb.py但只ImportError: No module named抛出一个。到目前为止我尝试了什么

网页.py

from __future__ import absolute_import
    from database.db import ClassA
OR

from __future__ import absolute_import
from app.database.db import ClassA

OR

from __future__ import absolute_import
import database import ClassA

我错过了什么?

// 编辑:

db/__init __.py
from db import ClassA

其他__init__.py都是空的。我想我在这方面做错了什么。

4

2 回答 2

1

它应该是

from ..database import db

您还可以通过web.py从项目的根目录运行来检查导入

python -m app.web.web
于 2013-02-06T10:31:35.380 回答
1

假设:

C:\pytest\
   test.py
   \database\
       db.py
       __init__.py
   \subfolder\
       __init__.py
       coolios.py

其中__init__.py包含:

from db import *

第二个__init__.py包含:

from coolios import *

db.py包含:

class WHAM():
    def __init__(self):
        print 'You import me!'

coolios.py包含:

from database import *

class ganster():
    def __init__(self):
        WHAM()

test.py包含:

from subfolder import ganster
ganster()

它应该工作。

于 2013-02-06T10:36:54.780 回答