Joh*_*aup 7 python string time tkinter
我在python 2.7中为一个定时器程序编写了一些代码.缺点是结果是几秒钟,我需要它Minutes:Seconds
.我试图格式化时间无济于事.有人可以帮忙吗?"
from Tkinter import *
import time
root = Tk()
root.title("Timer")
canvas = Canvas(root)
canvas.pack()
time=1
def tick():
canvas.delete(ALL)
global time
time += 10
if time >= 120:
canvas.create_text(180,140, font = ("Calibri",200),text=time,fill='red')
else:
canvas.create_text(180,140, font = ("Calibri",200),text=time,fill='green')
if time == 1000:
time = 0
tick()
else:
canvas.after(1000, tick)
def reset():
global time
time = 0
def close_window():
root.destroy()
b = Button(root,text="Reset", command=reset)
c = Button(root,text="Quit", command=close_window)
b.pack(side = LEFT)
c.pack(side = RIGHT)
canvas.after(1, tick)
root.mainloop()
Run Code Online (Sandbox Code Playgroud)
Jiv*_*van 11
您可以使用 datetime.timedelta
import datetime
number_of_seconds = 1000
str(datetime.timedelta(seconds=number_of_seconds))
# output
'0:16:40'
Run Code Online (Sandbox Code Playgroud)
或者甚至更好,因为你只想要mm:ss
,你可以使用time.strftime
import time
number_of_seconds = 1000
time.strftime("%M:%S", time.gmtime(number_of_seconds))
# output
'16:40'
Run Code Online (Sandbox Code Playgroud)
小智 4
要将秒转换为分钟和秒,可以使用以下divmod
函数:
>>> time = 1000 # 1000 seconds
>>> divmod(1000, 60)
(16, 40)
>>>
Run Code Online (Sandbox Code Playgroud)
输出元组中的第一个数字是分钟,第二个数字是剩余的秒数。然后,您可以使用str.format
此元组将其转换为您想要的字符串:
>>> time = 1000
>>> '{}:{}'.format(*divmod(time, 60))
'16:40'
>>>
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
8764 次 |
最近记录: |