Python Falsk __名称__

时间:2018-10-18 03:05:03

标签: python flask

在默认的Flask应用中,PyCharm生成以下代码:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

if __name__ == '__main__':
    app.run()

在我关注的几乎所有教程中(现在,socketio),它都希望我在if语句内添加初始化代码(像这样):

if __name__ == '__main__':
    app = socketio.Middleware(sio, app)
    eventlet.wsgi.server(eventlet.listen(('', 8000)), app)

问题

__name__似乎总是等于app,这意味着__name__不等于__main__,因此不会输入if语句。 if语句的目的是什么?是PyCharm特定的,还是某种方式在生产中启动应用程序?如果是这样,生产如何自动将__name__设置为__main__

试图弄清楚这些变量来自何处,以便找出正确的代码位置(即:socketio)。

参考:https://python-socketio.readthedocs.io/en/latest/

0 个答案:

没有答案