我需要程序在某个时间更改变量的值,但是当我运行它时,它仍然返回相同的值给我。
这是一个应该更改同一模块中的全局变量 days 的函数。
days = dict()
def create_days():
global days
start_time = datetime.datetime.strptime(
datetime.datetime.now().replace(hour=10, minute=00).strftime('%Y-%m-%d %H:%M'), '%Y-%m-%d %H:%M')
week: dict = _create_weeks_dict(start_time)
days = week
在另一个模块中还有另一个函数使用 Celery 来安排 create_days 函数
@celery_app.task
def every_day_routine():
create_days()
celery_app.conf.beat_schedule = {
'run-every-day-at-midnight': {
'task': 'worker.celery.every_day_routine',
'schedule': crontab(hour='0', minute='0')
}
}
启动后,它会根据时间表发生变化,并在celery控制台中显示不同的值,但程序运行时变量不会发生变化。
我在另一个模块中使用了 days 变量,但我只导入它。