我想定期运行特定作业(作为简单示例generate_random_int
),以更新变量的值(作为简单示例i
)。
在schedule
例程中运行的作业函数是否可以在外部更新变量i
?
据我所知,不可能从schedule.every(5).seconds.do()
中提取输出。下面是我尝试使用全局变量的尝试。但是,这总是打印0
,我希望它每5秒更新一次i
的值。 (我对在作业功能内打印本地i
感兴趣-这是注释行)。
import schedule
import random
def generate_random_int(N):
i = random.randint(0,N)
#print(i)
if __name__ == '__main__':
schedule.every(5).seconds.do(generate_random_int, N=1000)
i = 0
while True:
schedule.run_pending()
print(i)