一秒后输出 Hello Timer!
oneshot的定时器这样就可以实现。
如果要实现cycle的定时器,则可以:
1s后定时器启动后,将再次以5.5s为间隔周期性执行回调fun_timer函数
结果是:
在使用Python定时器时需要注意:
1.定时器构造函数主要有2个参数,第一个参数为时间,第二个参数为函数名,第一个参数表示多长时间后调用后面第二个参数指明的函数。第二个参数注意是函数对象,进行参数传递,用函数名(如fun_timer)表示该对象,不能写成函数执行语句fun_timer(),不然会报错。
2.定时器间隔单位是秒,可以是浮点数,如5.5,0.02等,在执行函数fun_timer内部和外部中给的值可以不同。如上例中第一次执行fun_timer是1秒后,后面的都是5.5秒后执行。
3.可以使用cancel停止定时器的工作
sleep就可以吧,把程序作为一个线程,启动线程,里面加个sleep,示例如下:\x0d\x0aimport threading\x0d\x0aimport time\x0d\x0aclass Test(threading.Thread):\x0d\x0adef __init__(self):\x0d\x0apass\x0d\x0a\x0d\x0adef test(self):\x0d\x0aprint 'run test!'\x0d\x0a\x0d\x0adef run(self):\x0d\x0awhile True:\x0d\x0aprint time.strftime('%Y-%m-%d %H:%M:%S')\x0d\x0aself.test()\x0d\x0atime.sleep(5)\x0d\x0a#test...\x0d\x0aa=Test()\x0d\x0aa.run()\x0d\x0a#...test写惯了Python脚本,需求越来越多,越来越强烈,那么面对需求,可能就会有各种定制化的要求条件出来,由于一些事情需要经常执行,但是不能人工每次去执行,自然就想到了能不能定时去执行Python脚本,通过查询,映入眼帘的是crontab。
具体执行方法是。
在iterm中输入 crontab -e ,这个的作用是编辑任务名。
随后就打开了vim,可以进行编辑
具体规则是
在其中我输入了
其目的是希望每天10点、15点、18点的时候执行Python脚本。
保存之后,会弹出是否允许管理电脑,直接点好就可以。
保存了之后可以通过 crontab -l 来查看是否创建成功
这样就创建成功了,等待明天的好消息了。
今天早上十点没有看到执行的操作,然后看到控制台有一条消息是
查看对应的文件描述是
了解到原来是没有找到python3,所以将命令改为
修改Python的路径后,有看到了报错如下:
这说明Python脚本已经运行起来了,但是因为编码原因没有完全成功运行,因为本身自动运行也没有必要print,所以去掉即可,我把print去掉之后,成功执行了脚本。
参考资料: https://www.jianshu.com/p/333d799aebb1