python 实现倒计时功能(gui界面)

 更新时间:2020年11月11日 11:35:12   作者:TechVidvan  
这篇文章主要介绍了python 实现倒计时功能(gui界面),帮助大家更好的理解和使用python,感兴趣的朋友可以了解下

运行效果:

完整源码:

##import library
from tkinter import *
import time
from playsound import playsound


## display window 
root = Tk()
root.geometry('400x300')
root.resizable(0,0)
root.config(bg ='blanched almond')
root.title('TechVidvan - Countdown Clock And Timer')
Label(root, text = 'Countdown Clock and Timer' , font = 'arial 20 bold', bg ='papaya whip').pack()


#display current time#######################

Label(root, font ='arial 15 bold', text = 'current time :', bg = 'papaya whip').place(x = 40 ,y = 70)


####fun to display current time
def clock():
 clock_time = time.strftime('%H:%M:%S %p')
 curr_time.config(text = clock_time)
 curr_time.after(1000,clock)

curr_time =Label(root, font ='arial 15 bold', text = '', fg = 'gray25' ,bg ='papaya whip')
curr_time.place(x = 190 , y = 70)
clock()


#######################timer countdown##########


#storing seconds
sec = StringVar()
Entry(root, textvariable = sec, width = 2, font = 'arial 12').place(x=250, y=155)
sec.set('00')

#storing minutes
mins= StringVar()
Entry(root, textvariable = mins, width =2, font = 'arial 12').place(x=225, y=155)
mins.set('00')


# storing hours
hrs= StringVar()
Entry(root, textvariable = hrs, width =2, font = 'arial 12').place(x=200, y=155)
hrs.set('00')

##########fun to start countdown

def countdown():
 times = int(hrs.get())*3600+ int(mins.get())*60 + int(sec.get())
 while times > -1:
  minute,second = (times // 60 , times % 60)
  
  hour = 0
  if minute > 60:
   hour , minute = (minute // 60 , minute % 60)
   
  sec.set(second)
  mins.set(minute)
  hrs.set(hour)
  
  root.update()
  time.sleep(1)

  if(times == 0):
   playsound('Loud_Alarm_Clock_Buzzer.mp3')
   sec.set('00')
   mins.set('00')
   hrs.set('00')
  times -= 1

Label(root, font ='arial 15 bold', text = 'set the time', bg ='papaya whip').place(x = 40 ,y = 150)

Button(root, text='START', bd ='5', command = countdown, bg = 'antique white', font = 'arial 10 bold').place(x=150, y=210)
  


root.mainloop()

想要获得更多关于python的资讯、工具、实例,请关注python客栈

以上就是python 实现倒计时功能(gui界面)的详细内容,更多关于python 倒计时的资料请关注脚本之家其它相关文章!

相关文章

  • tensorflow学习教程之文本分类详析

    tensorflow学习教程之文本分类详析

    初学tensorflow,借鉴了很多别人的经验,参考博客对评论分类(感谢博主的一系列好文),本人也尝试着实现了对文本数据的分类,下面这篇文章主要给大家介绍了关于tensorflow学习教程之文本分类的相关资料,需要的朋友可以参考下
    2018-08-08
  • Pymysql实现往表中插入数据过程解析

    Pymysql实现往表中插入数据过程解析

    这篇文章主要介绍了Pymysql实现往表中插入数据过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-06-06
  • 使用Python将字符串转换为格式化的日期时间字符串

    使用Python将字符串转换为格式化的日期时间字符串

    这篇文章主要介绍了使用Python将字符串转换为格式化的日期时间字符串,需要的朋友可以参考下
    2019-09-09
  • 全面了解python字符串和字典

    全面了解python字符串和字典

    下面小编就为大家带来一篇全面了解python字符串和字典。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-07-07
  • 使用python telnetlib批量备份交换机配置的方法

    使用python telnetlib批量备份交换机配置的方法

    今天小编就为大家分享一篇使用python telnetlib批量备份交换机配置的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-07-07
  • Python中flask框架跨域问题的解决方法

    Python中flask框架跨域问题的解决方法

    本文主要介绍了Python中flask框架跨域问题的解决方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 为什么从Python 3.6开始字典有序并效率更高

    为什么从Python 3.6开始字典有序并效率更高

    这篇文章主要给大家介绍了关于为什么从Python 3.6开始字典有序并效率更高的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Python实现服务端渲染SSR的示例代码

    Python实现服务端渲染SSR的示例代码

    服务端渲染是一种常见的技术策略,特别是在需要改善网站的搜索引擎优化(SEO)和首屏加载时间的场景下,本文将介绍如何利用 Python 实现 SSR,感兴趣的可以了解下
    2024-02-02
  • PyQt5实现用户登录GUI界面及登录后跳转

    PyQt5实现用户登录GUI界面及登录后跳转

    PyQt5是强大的GUI工具之一,通过其可以实现优秀的桌面应用程序。本文主要介绍了PyQt5实现用户登录GUI界面及登录后跳转,具有一定的参考价值,感兴趣的可以了解一下
    2021-11-11
  • Python检查判断一个数是不是另一个数的整数次幂实例深究

    Python检查判断一个数是不是另一个数的整数次幂实例深究

    在数学和计算中,确定一个数是否为另一个数的整数次幂是一个常见而重要的问题,例如,我们可能需要判断一个数是否是某个数的平方、立方或其他幂次,本文将探讨在Python中如何实现这一功能,通过数学方法和算法检查一个数是否是另一个数的整数次幂
    2023-12-12

最新评论