用python写一个windows下的定时关机脚本(推荐)


Posted in Python onMarch 21, 2017

由于本人经常使用笔记本共享WiFi,但是又不想笔记本开机一夜(为了低碳环保嘛 ~_~!),所以每次都要用使用DOS命令关机,感觉好麻烦。正好最近在学习Python,于是决定用python写一个定时关机的脚本:

话不多说由于代码比较简单,直接上代码。

代码块

# -*- coding: utf-8 -*-
"""
Created on Sat Dec 19 11:18:16 2015
@author: win7
"""
'''定时关机'''
'''脚本功能:windows下,用户按照一定格式输入关机时间,系统到指定时间自动关闭
  思路:从用户输入获取指定时间 分别以时分秒减去当前时间 最终计算得到当前时间距离指定
  时间还有多少秒 作为关机命令的时间参数
'''
'''需要用到的模块:
        os 用于执行设定的系统命令
        time 用于获取系统时间
 需要用到的命令: shutdown -s -t xxx 其中xxx为距离自动关机所用秒数,即时间参数      
        shutdown -a 取消关机计划
'''
import os,time
#获取用户指定关机时间
print u'使用说明:输入关机时间,格式如:小时:分钟 举个栗子:20:21 然后敲回车 即可  
如果想取消定时关机 再次双击打开程序 输入 off 敲回车 即可'.encode('mbcs')
#u'xxx'.encode('mbcs') 使正文字符在控制台正确显示
input_time=raw_input(u'请输入关机时间,格式如:小时:分钟 :'.encode('mbcs'))
#取消定时关机
#计划总有变化 先留条后路
if input_time == 'off':
  os.system('shutdown -a')
#输入数据检查
#由于是自用 暂时略过
#提取时分秒
h1 = int(input_time[0:2])
m1 = int(input_time[3:5])
#print h1,m1#验证获取是否正确
#获取当前系统时间
mytime = time.strftime('%H:%M:%S')
h2 = int(mytime[0:2])
m2 = int(mytime[3:5])
#print h2,m2 #验证获取是否正确
#对用户输入数据进行整理 防止出现25:76:66这样的时间数据
if h1 > 24:
  h1 = 24
  m2 = 0
if m1 > 60:
  m1 = 60
if h1<h2:
  h1 = h1 + 24  
#计算秒数
s1=(h1+(m1/60.0)-h2-(m2/60.0))*3600
print '距离关机还有 %d 秒' %s1
os.system('shutdown -s -t %d' %s1 )

作者说

刚开始自学python不久,这个脚本写的比较简陋,很多功能没有加上去,比如:输入数据的检查,处理输出数据的手段也比较粗暴,还有很多写的不好的地方,希望看到的大神能不吝指正。

完成脚本遇到的问题

说起来真有点脸红,在写脚本的过程中犯了不少低级错误。为了以后能少点脸红,同时也给刚刚入门的小伙伴提供一个错误的教学示范,特此把它们都记录下来,大神看了就当是一乐吧! ~_~

1.忘了 整数/整数=整数 这事了 测试的时候时间老是不对 因为我把得到的分钟转化为小时的时候除的数是60 这是整数啊 所以得到的结果都是错了 后来把计算结果挨个输出测试的时候才发现 醉了

2.忘了数据类型转换 raw_input()得到的数据是字符串 我测试的时候 直接报错 才想起来 也是醉了

3.最后是字符显示问题 开始我写完脚本运行的时候 控制台显示的是乱码 后来经过百度找到了解决办法 u'xxx'.encode(‘mbcs')

以上所述是小编给大家介绍的用python写一个windows下的定时关机脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
Python使用pip安装报错:is not a supported wheel on this platform的解决方法
Jan 23 Python
python通过微信发送邮件实现电脑关机
Jun 20 Python
从0开始的Python学习014面向对象编程(推荐)
Apr 02 Python
Python跳出多重循环的方法示例
Jul 03 Python
python可视化爬虫界面之天气查询
Jul 03 Python
如何在python中实现随机选择
Nov 02 Python
Django连接数据库并实现读写分离过程解析
Nov 13 Python
常用python爬虫库介绍与简要说明
Jan 25 Python
利用Python脚本实现自动刷网课
Feb 03 Python
PyCharm License Activation激活码失效问题的解决方法(图文详解)
Mar 12 Python
Python使用pyecharts控件绘制图表
Jun 05 Python
利用Python实现Windows定时关机功能
Mar 21 #Python
使用Python生成XML的方法实例
Mar 21 #Python
Python存取XML的常见方法实例分析
Mar 21 #Python
Python正则简单实例分析
Mar 21 #Python
Python处理XML格式数据的方法详解
Mar 21 #Python
Python做简单的字符串匹配详解
Mar 21 #Python
Python 转义字符详细介绍
Mar 21 #Python
You might like
php面向对象全攻略 (七) 继承性
2009/09/30 PHP
php中模拟POST传递数据的两种方法分享
2011/09/16 PHP
mysql总结之explain
2012/02/27 PHP
php中一个有意思的日期逻辑处理
2012/03/25 PHP
在PHP程序中使用Rust扩展的方法
2015/07/03 PHP
理解PHP中的Session及对Session有效期的控制
2016/01/08 PHP
Laravel中服务提供者和门面模式的入门介绍
2017/11/06 PHP
一个刚完成的layout(拖动流畅,不受iframe影响)
2007/08/17 Javascript
精解window.setTimeout()&amp;window.setInterval()使用方式与参数传递问题!
2007/11/23 Javascript
javascript URL锚点取值方法
2009/02/25 Javascript
jQuery 打造动态下滑菜单实现说明
2010/04/15 Javascript
一个很简单的jquery+xml+ajax的无刷新树结构(无css,后台是c#)
2010/06/02 Javascript
jquery如何判断表格同一列不同行input数据是否重复
2014/05/14 Javascript
js电话号码验证方法
2015/09/28 Javascript
angularjs自定义ng-model标签的属性
2016/01/21 Javascript
第八篇Bootstrap下拉菜单实例代码
2016/06/21 Javascript
简单的网页广告特效实例
2017/08/19 Javascript
微信小程序wx.uploadfile 本地文件转base64的实现代码
2018/06/28 Javascript
使用flow来规范javascript的变量类型
2019/09/12 Javascript
python通过urllib2爬网页上种子下载示例
2014/02/24 Python
Python创建xml的方法
2015/03/10 Python
在Python的Django框架中显示对象子集的方法
2015/07/21 Python
Pycharm编辑器技巧之自动导入模块详解
2017/07/18 Python
Python连接SQLite数据库并进行增册改查操作方法详解
2020/02/18 Python
python数据预处理 :数据共线性处理详解
2020/02/24 Python
python和php哪个更适合写爬虫
2020/06/22 Python
Django框架请求生命周期实现原理
2020/11/13 Python
中国汽车租赁行业头部企业:一嗨租车
2019/05/16 全球购物
俄语翻译实习生的自我评价分享
2013/11/06 职场文书
怎么写有吸引力的自荐信
2013/11/17 职场文书
销售员求职个人的自我评价
2014/02/19 职场文书
军训教官感言
2014/03/02 职场文书
优秀班组长事迹
2014/05/31 职场文书
工程竣工验收申请报告
2015/05/15 职场文书
Springboot使用Spring Data JPA实现数据库操作
2021/06/30 Java/Android
关于Python使用turtle库画任意图的问题
2022/04/01 Python