在 Python 中连续执行单个函数之间的时间

Time between consecutive executions of a single function in Python

抱歉,如果问题有点含糊,我会根据需要进行编辑。

我正在使用 Tkinter 在 Python 中创建一个国际象棋游戏,并想添加一个国际象棋计时器。 当玩家移动棋子时,会调用 move() 函数,使棋子移动到正确的方格,然后轮次切换(从黑色到白色,反之亦然)——轮次是一个列表 ["W", "B"] 跟踪轮到谁了。

当玩家选择要移动到的方块时调用:

def move():
    #code here
    turn.reverse()

为了给每个动作计时,我想测量连续执行 move() 函数之间的时间(即转动开关之间的时间)。

总结一下:

如何测量同一函数连续执行之间的时间间隔?

编辑

从回答中可以看出我的问题被误解了,很抱歉没有澄清: 我 不是 想要测量执行函数(move() 函数)所需的时间。 我想测量函数连续执行 之间的时间。这里给出的答案假设我只想测量函数从开始到结束的执行时间。您不能假设 move() 函数在完成后立即再次执行;它是通过单击按钮调用的,因此在再次调用 move() 函数之前可能会有延迟(考虑移动)。

如有任何帮助,我们将不胜感激。

您可以使用 python 的 time 模块。如果我正确理解你的问题,可以做这样的事情:

import time
initial_time = time.monotonic()
def move():
    #code here
    time_gap = time.monotonic() - initial_time
    print(time_gap)
    initial_time = time.monotonic()
    turn.reverse()