使用(真棒)Python Flask framework,我正在建立一个网站,我有3个“常量”,每天早上都会改变(所以我的常数不是很稳定,我知道,但仍然)。我几乎每次调用webserver(页面和API请求)都需要这些常量,所以我希望检索这些常量非常有效。
我想定义这些常量的最有效方法是每天早上在代码中手动设置它们。但由于我很懒,编程背后的想法是自动化,我认为没有理由以不同的方式处理这个问题。这就是为什么我想到了3种不同的方式;
但:
我有一个想法,我忽略了一个非常简单的酷伎俩,我根本无法想到。谁能告诉我最聪明的事情是什么?欢迎提出所有提示和想法!
答案 0 :(得分:2)
您也可以使用环境变量。
检索“常量”时,请在环境中设置它:
import os
os.environ['MY_DAILY_CONST_1'] = 'dailyconst1'
os.environ['MY_DAILY_CONST_2'] = 'dailyconst2'
...
当你必须访问它时:
import os
myconst1 = os.environ['MY_DAILY_CONST_1']
...
答案 1 :(得分:1)
由于您正在使用Flask,您还可以将常量保存为应用程序级别的全局变量。
from flask import Flask
app = Flask('my_app')
constant1, constant2, constant3 = retrieve_constants()
app.jinja_env.globals['constant1'] = constant1
app.jinja_env.globals['constant2'] = constant2
app.jinja_env.globals['constant3'] = constant3