我有一个具有以下结构的 python 应用程序。
/app
/models
__init__.py
profile.py
/views
__init__.py
index.py
login.py
__init.py
main.py
目前三个__init__.py
文件都是空的。
在像 index.py
这样的文件中,我有几个类。
class IndexHandler(webapp2.RequestHandler):
#blah blah
我应该在 __init.py__
文件中编写什么,以便我可以调用 profile.py
、index.py
和等等而无需输入完整的包路径?
最佳答案
Python 中的命名空间是显式的。在每个 __init__.py
文件中,导入您希望在该包的命名空间中可用的任何模块、函数和类。
例如,如果您希望 app
包有一个 index
成员,请在 /app/__init__.py
中:
from views import index
或者,如果您希望类本身成为命名空间的一部分:
from models.views import IndexHandler
这将允许您执行以下操作:
import app
handler1 = app.index.IndexHandler() # example 1
handler1 = app.IndexHandler() # example 2
关于python - 在这种情况下如何配置 __init__.py?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14687914/