python - 使用烧瓶重置全局变量的值
问题描述
我注意到我的烧瓶应用程序没有反映全局变量的变化。例如,这里有一个最小的应用程序:
import flask
message = 'Hello World'
app = flask.Flask(import_name=__name__)
@app.route('/')
def print_message():
return message
app.run()
message = 'Hello New World'
即使我最终将变量“消息”设置为“Hello New World”,这也会导致“Hello World”作为返回值。
是否可以重置应用程序或更优雅地重置应用程序使用的变量?
THX 拉尔斯
解决方案
我不太确定这是否是你想要的。我通过遍历全局列表来更改变量。
import flask
global messages
messages = iter(['Hello World', 'Hello World 1', 'Hello World 2'])
app = flask.Flask(import_name=__name__)
@app.route('/')
def print_message():
try:
return next(messages)
except Exception as e:
return 'End :('
if __name__ == '__main__':
app.run()
推荐阅读
- android - 通过命令行更改包名称(没有 Android Studio)
- ios - iOS - 组合 - 将发布者类型更改为子类型
- r - 如何计算与 R 中相同列值关联的两个行值的差异?
- windows-10 - AutoHotkey:在 Windows 10 中检测任务切换器窗口
- php - 如何使用 PHP 从字符串中获取特定的 html 元素
- kubernetes - KubernetesClientException - 操作获取失败
- javascript - 如果字段有值,则更改边框颜色
- android - 在 Android 10 中从 Uri 获取绝对路径
- c# - 视图模型未正确绑定 C#
- c# - 多匹配查询的 Elasticsearch 限制分数影响