Python程序似乎运行了两次

the*_*eva 0 python flask

我有一个正在运行 Flask 的 python 程序。我注意到一个奇怪的事情,看起来该程序运行了两次,这是我不希望的。

这是启动程序的文件(runserver.py,位于根文件夹/):

from myapp import app

if __name__ == "__main__":
    print "woho"
    app.run(host='0.0.0.0',debug=True)
Run Code Online (Sandbox Code Playgroud)

运行这个程序时,我可以在终端中看到两个“woho”,表明有些事情很奇怪。

在文件夹 /myapp 中我有 __init__.py:

from flask import Flask

app = Flask(__name__) 

import myapp.views
Run Code Online (Sandbox Code Playgroud)

然后在我的views.py(也在/myapp中)我有所有的视图,例如:

from myapp import app
from flask import render_template

@app.route('/')
def index():
    return render_template('index.html')
Run Code Online (Sandbox Code Playgroud)

小智 6

这是由于 Flask/werkzeug 的重新加载器,当您更改代码时它会自动重新加载。

因此,如果您不想/不需要,例如“生产”,请指定 debug=False 。

如何阻止 Flask 在调试模式下初始化两次?