我似乎无法让Python在子文件夹中导入模块。当我尝试从导入的模块创建类的实例时出现错误,但是导入本身成功。这是我的目录结构:

Server
    -server.py
    -Models
        --user.py

这是server.py的内容:
from sys import path
from os import getcwd
path.append(getcwd() + "\\models") #Yes, i'm on windows
print path
import user

u=user.User() #error on this line

和user.py:
class User(Entity):
    using_options(tablename='users')

    username = Field(String(15))
    password = Field(String(64))
    email    = Field(String(50))
    status   = Field(Integer)
    created  = Field(DateTime)

错误是:
AttributeError:“模块”对象没有属性“用户”

最佳答案

我相信您需要在Models目录中创建一个名为__init__.py的文件,以便python将其视为模块。

然后,您可以执行以下操作:

from Models.user import User

您可以在__init__.py中包含代码(例如,一些其他类需要的初始化代码)或将其留空。但是它必须在那里。

关于python - 无法让Python从其他文件夹导入,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/456481/

10-12 18:23
查看更多