Python 从带有“ModuleNotFoundError”的模块导入

我有一个如下所示的目录:


├── libraryweb

│   ├── __init__.py

│   ├── __init__.pyc

│   ├── __pycache__

│   │   ├── __init__.cpython-37.pyc

│   │   ├── forms.cpython-37.pyc

│   │   ├── models.cpython-37.pyc

│   │   └── routes.cpython-37.pyc

│   ├── forms.py

│   ├── models.py

│   ├── routes.py

│   ├── save_books.py

│   ├── site.db

│   ├── static

│   │   ├── book_pics

│   │   └── user_pics

│   │       └── default.jpg

│   └── templates

│       ├── account.html

│       ├── base.html

│       ├── book.html

│       ├── book_update.html

│       ├── home.html

│       ├── login.html

│       └── register.html

└── run.py

现在在文件中save_books.py,我想Book从模块models.py中导入一个类libraryweb。我已经尝试过from libraryweb.models import Book,,from .models import Book和from models import Book,但它们都不起作用。


该__init__.py文件包含以下代码:


from flask_sqlalchemy import SQLAlchemy

from flask import Flask

from flask_bcrypt import Bcrypt

from flask_login import LoginManager

import os


app = Flask(__name__)

app.config['SECRET_KEY'] = os.environ.get('SECRET_KEY')

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///site.db'

db = SQLAlchemy(app)

bcrypt = Bcrypt(app)

login_manager = LoginManager(app)

login_manager.login_view='login'

login_manager.login_message_category='info'


from libraryweb import routes

我收到以下错误消息:


Exception has occurred: ModuleNotFoundError

No module named 'libraryweb'

  File "/Users/gracezhou/cs/python_flask/flask-library/hey/libraryweb/save_books.py", line 3, in <module>

    from libraryweb.models import Book


陪伴而非守候
浏览 89回答 1
1回答

月关宝盒

您是否将 PYTHONPATH 变量设置为指向您的应用程序路径?您能否显示以下命令的输出?导入系统系统路径模块文件存在的所有目录都需要位于 PYTHONPATH 环境变量中。如果将所有内容转储到单个目录中,那么您只需要将包含 python 文件的文件夹放入 PYTHONPATH 中。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python