gpt4 book ai didi

python - 尝试从目录外部导入时出现 ModuleNotFoundError

转载 作者:行者123 更新时间:2023-11-30 22:42:55 27 4
gpt4 key购买 nike

我正在开发 Flask 应用程序并尝试运行我的测试文件,但无法执行此操作。我当前的应用程序结构是:

Project
── app
│   ├── __init__.py
│   ├── forms.py
│   ├── model.py
│   ├── models.py
│   ├── static
│   │   ├── css
│   │   ├── fonts
│   │   ├── img
│   │   ├── js
│   │   └── uploads
│   ├── templates
│   │   ├── client
│   │   │   ├── client-base.html
│   │   │   ├── client-inventory.html
│   │   │   ├── client-login.html
│   │   │   ├── client-macros.html
│   │   │   ├── client-main.html
│   │   │   └── client-signup.html
│   │   └── user
│   │   ├── user-base.html
│   │   ├── user-macros.html
│   │   └── user-main.html
│   └── views
│   ├── __init__.py
│   ├── client.py
│   └── user.py
├── config.py
├── run.py
└── tests
└── test_user_model.py

当我尝试在 test_user_model.py 中运行 from app.models import User 时,它会引发ModuleNotFoundError:没有名为“app”的模块。我尝试了无数种不同的方式编辑 import 语句,但在每种情况下它仍然会引发错误(from ..app import models 超出范围,import app 和类似的导入也不起作用。)

最佳答案

您应该在 tests 目录中添加 __init__.py 。空的 __init__.py 会将该目录转换为包。然后您可以在 test_user_model.py 中使用此行:

from app.models import User

详情请参阅PEP 328 .

关于python - 尝试从目录外部导入时出现 ModuleNotFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41963455/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com