有没有一种优雅的方法可以让python中的main()周期性地再次运行?

2024-04-24 05:50:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在做一个非常基本的天气跟踪器应用程序,我希望它能实时跟踪(我想把它用作我宿舍里树莓皮上的一个信息亭)。我认为这样做的方法是使用sleep,但是有没有更优雅的方法来包装main()以便它在每个x时段重新运行?你知道吗

我的代码结构如下:

def function1():
    # do things

def function2():
    # do things

def function3():
    # do things

def main():
    # code that creates GUI
    function1()
    function2()
    function3()


if __name__ == '__main__':
    main()

Tags: 方法信息应用程序maindefsleepdo树莓
1条回答
网友
1楼 · 发布于 2024-04-24 05:50:29

假设您要从终端调用此脚本,并且您使用的是Unix/Linux操作系统:

while true; do python your_script.py; sleep 2; done

your_script.py替换为文件名,将2替换为所需的秒周期。你知道吗

如果要在脚本中执行此操作,可以放置一个无限while循环以定期调用main:

import time

def main():
    print("1")

if __name__ == '__main__':
    while True:
        main()
        time.sleep(2)

相关问题 更多 >