Python 启动定时器调用函数并传参,以及满足条件后停止计时器
时间: 2023-12-03 15:42:04 浏览: 113
Python 实现一个计时器
可以使用 Python 中的 `threading.Timer` 类来实现启动定时器并调用函数。具体的实现步骤如下:
1. 定义需要定时执行的函数,例如:
```python
def func(arg1, arg2):
print("arg1:", arg1)
print("arg2:", arg2)
```
2. 使用 `threading.Timer` 类创建并启动定时器,例如:
```python
import threading
# 创建定时器,每隔5秒钟执行一次 func 函数,并传入参数 "hello" 和 "world"
timer = threading.Timer(5.0, func, args=("hello", "world"))
# 启动定时器
timer.start()
```
这样就可以每隔5秒钟执行一次 `func` 函数,并且传入参数 "hello" 和 "world"。
如果需要满足某个条件后停止计时器,可以在函数内部进行判断并调用 `timer.cancel()` 方法来停止计时器。例如:
```python
def func(arg1, arg2):
if condition:
print("stop timer")
timer.cancel()
else:
print("arg1:", arg1)
print("arg2:", arg2)
```
这样就可以在满足条件时停止计时器。注意,需要在函数内部使用 `timer` 变量来调用 `cancel()` 方法,因为 `timer` 是在函数外部定义的。
阅读全文