如何使用tkinter在python中测量按钮按下之间经过的时间?
我对python非常陌生,我正在尝试为自己做一个小项目,但我不知道如何在stop函数中使用start函数中的initial time变量,我可以用它进行数学运算。这是我目前的代码:如何使用tkinter在python中测量按钮按下之间经过的时间?,python,python-2.7,tkinter,stopwatch,Python,Python 2.7,Tkinter,Stopwatch,我对python非常陌生,我正在尝试为自己做一个小项目,但我不知道如何在stop函数中使用start函数中的initial time变量,我可以用它进行数学运算。这是我目前的代码: import time import Tkinter import tkMessageBox top = Tkinter.Tk() def start_time(): tkMessageBox.showinfo("Timer", "The timer will now begin") initial
import time
import Tkinter
import tkMessageBox
top = Tkinter.Tk()
def start_time():
tkMessageBox.showinfo("Timer", "The timer will now begin")
initial = time.time()
return initial
def stop_time(initial):
final = time.time()
tkMessageBox.showinfo("Timer", final - initial)
Start = Tkinter.Button(top, text ="Start", command = start_time)
Stop = Tkinter.Button(top, text ="Stop", command = stop_time)
Start.pack()
Stop.pack()
top.mainloop()
您的职能部门需要就共享数据的公共位置达成一致。对于这个简单的示例,模块的全局名称空间是一个不错的选择。您只需将
global initial
添加到更新它的函数中。对于较大的项目,您可以移动到包含变量和更新变量的函数的对象,但这对于您的目标来说是好的
import time
import Tkinter
import tkMessageBox
initial = 0
top = Tkinter.Tk()
def start_time():
global initial
tkMessageBox.showinfo("Timer", "The timer will now begin")
initial = time.time()
return initial
def stop_time():
# you could check for initial == 0 and display an error
final = time.time()
tkMessageBox.showinfo("Timer", final - initial)
Start = Tkinter.Button(top, text ="Start", command = start_time)
Stop = Tkinter.Button(top, text ="Stop", command = stop_time)
Start.pack()
Stop.pack()
top.mainloop()