python实现定时关机功能的方法是什么?
Admin 2021-09-06 群英技术资讯 1035 次浏览
python实现定时关机功能的方法是什么?想要实现定时关机其实还是比较简单,首先,我们需要用到tkinter,下文有具体的实例代码,需要的朋友可以参考,接下来跟随小编一起来看看吧。
运行效果图如下:

import os,time
# import multiprocessing
import threading
from tkinter import *
from tkinter import ttk
import tkinter.messagebox as message_box
window =Tk()
window.title('auto_shutdown')
window.geometry('240x180')
window.resizable(False, False)
window.update()
var = StringVar()
var1 = StringVar()
var2 = StringVar()
# 设置func为守护线程
def funcs():
t = threading.Thread(target=func)
t.setDaemon(True)
t.start()
# 执行自动关机指令
def func():
#弹出messagebox警告提示
message_box.showwarning("Warning", "Your pc will shutdown at %s : %s" % (var.get(),var1.get()))
print('wohaizai')
mytime = time.strftime('%H:%M:%S')
h2 = mytime[0:2]
m2 = mytime[3:5]
s2 = mytime[6:]
print(h2)
print(m2)
print(s2)
print(var.get())
print(var1.get())
# 算出距离关机时间的秒数
count_down_second=-int(h2)*3600-int(m2)*60-int(s2)+int(var.get())*3600+int(var1.get())*60+int(var2.get())
# 如果关机设置在第二天,结果加86400(一天的总秒数)
if count_down_second<0:
count_down_second=count_down_second+86400
os.system("shutdown -s -t %s" % count_down_second)
print(count_down_second)
window.quit()
# 快捷关机选项入口
def fun_set1():
cb_h.current(18)
def fun_set2():
cb_h.current(21)
def fun_set3():
cb_h.current(22)
def fun_set4():
cb_h.current(23)
def funcq():
os.system('shutdown -a')
# 定义三个容器,方便布局
root = ttk.LabelFrame(window, text="定时关机")
root.grid(column=0, row=0,padx=2, pady=2)
root1 = ttk.LabelFrame(window, text="常用时间")
root1.grid(column=1, row=0,padx=2, pady=2)
root2 = ttk.LabelFrame(window, text="开始")
root2.grid(column=0, row=1,columnspan=2,padx=2, pady=2)
Label(root,text=':').grid(column=1, row=0,padx=2, pady=5)
cb_h = ttk.Combobox(root,width=3,textvariable =var)
a = []
for i in range(10):
a.append(('0'+str(i)))
for i in range(10,24):
a.append(i)
cb_h['values'] =tuple(a)
cb_h.current(0)
cb_h.grid(column=0, row=0,padx=2, pady=5)
cb_m = ttk.Combobox(root,width=3,textvariable =var1)
b = []
for i in range(10):
b.append('0'+str(i))
for i in range(10,60):
b.append(str(i))
cb_m['values'] =tuple(b)
cb_m.current(0)
cb_m.grid(column=2, row=0,padx=2, pady=5)
cb_s = ttk.Combobox(root,width=3,textvariable =var2)
c = []
for i in range(10):
c.append('0'+str(i))
for i in range(10,60):
c.append(str(i))
cb_s['values'] =tuple(c)
cb_s.current(0)
cb_s.grid(columnspan=3, row=1,padx=2, pady=6)
Button(root1,text = '18:00',command = fun_set1).grid(column=0, row=0,padx=2, pady=2)
Button(root1,text = '21:00',command = fun_set2).grid(column=1, row=0,padx=2, pady=2)
Button(root1,text = '22:00',command = fun_set3).grid(column=0, row=1,padx=2, pady=2)
Button(root1,text = '23:00',command = fun_set4).grid(column=1, row=1,padx=2, pady=2)
b1=Button(root2,text = '开始',command = funcs,height =2,width =6)
b1.grid(column=0, row=0,padx=24, pady=2)
b1=Button(root2,text = '取消',command = funcq,height =2,width =6)
b1.grid(column=1, row=0,padx=24, pady=2)
root.mainloop()
项目的github地址
ps:已打包为exe格式,可在dist目录下找到
以上就是python实现定时关机功能的介绍,有需要的朋友可以参考上文代码,希望本文对大家学习python有帮助,想要了解更多大家可以关注群英网络其它相关文章。
文本转载自脚本之家
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
Python语言允许在定义函数的时候,其函数体内又包含另外一个函数的完整定义,这就是我们通常所说的嵌套定义。实例1:defOutFun(): 定义函数
文件操作是开发中经常遇到的场景,那么如何判断一个对象是文件对象呢?下面我们总结了3种常见的方法。方法1:比较类型第一种方法,就是判断
这篇文章主要介绍了讲解Python 中的with关键字,文章基于python的相关资料展开 with 语句的一些基本概念和用法及其底层工作原理,下文更多内容感兴趣的小伙伴可以参考一下
这篇文章主要为大家介绍了python密码学周期置换密码的学习,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
这篇文章主要介绍了基于PyQt5完成的PDF拆分功能,本文介绍的pdf拆分功能还有一些待完善地方,例如可增加预览功能,实现每页预览,以及如何实现多条件拆分,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008