用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实现父类调用两种方法的不同
Jan 15 Python
python unittest实现api自动化测试
Apr 04 Python
解决已经安装requests,却依然提示No module named requests问题
May 18 Python
python实现剪切功能
Jan 23 Python
python实现一个简单的ping工具方法
Jan 31 Python
详解python中list的使用
Mar 15 Python
python区块及区块链的开发详解
Jul 03 Python
django的403/404/500错误自定义页面的配置方式
May 21 Python
通过实例解析Python文件操作实现步骤
Sep 21 Python
python 装饰器重要在哪
Feb 14 Python
python实现过滤敏感词
May 08 Python
进行数据处理的6个 Python 代码块分享
Apr 06 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
ThinkPHP写第一个模块应用
2012/02/20 PHP
PHP超全局数组(Superglobals)介绍
2015/07/01 PHP
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
JS验证不重复验证码
2017/02/10 Javascript
vue.js学习之UI组件开发教程
2017/07/03 Javascript
react-navigation 如何判断用户是否登录跳转到登录页的方法
2017/12/01 Javascript
react native 文字轮播的实现示例
2018/07/27 Javascript
vue-lazyload使用总结(推荐)
2018/11/01 Javascript
vue实现的树形结构加多选框示例
2019/02/02 Javascript
wxpython 学习笔记 第一天
2009/02/09 Python
盘点提高 Python 代码效率的方法
2014/07/03 Python
python中的hashlib和base64加密模块使用实例
2014/09/02 Python
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
Python 如何访问外围作用域中的变量
2016/09/11 Python
机器学习10大经典算法详解
2017/12/07 Python
Python使用try except处理程序异常的三种常用方法分析
2018/09/05 Python
python对视频画框标记后保存的方法
2018/12/07 Python
python实现两张图片的像素融合
2019/02/23 Python
基于python实现雪花算法过程详解
2019/11/16 Python
Python实现图片添加文字
2019/11/26 Python
python 将dicom图片转换成jpg图片的实例
2020/01/13 Python
django模型动态修改参数,增加 filter 字段的方式
2020/03/16 Python
Python 随机按键模拟2小时
2020/12/30 Python
详解tf.device()指定tensorflow运行的GPU或CPU设备实现
2021/02/20 Python
CSS+jQuery实现的在线答题功能
2015/04/25 HTML / CSS
css3媒体查询中device-width和width的区别详解
2020/03/27 HTML / CSS
彪马日本官网:PUMA日本
2019/01/31 全球购物
敏捷开发的主要原则都有哪些
2015/04/26 面试题
趣味活动策划方案
2014/02/08 职场文书
安全先进班组材料
2014/12/26 职场文书
周一给客户的问候语
2015/11/10 职场文书
2016廉洁教育心得体会
2016/01/20 职场文书
2016民族团结先进个人事迹材料
2016/02/26 职场文书
总结python多进程multiprocessing的相关知识
2021/06/29 Python
Springboot如何同时装配两个相同类型数据库
2021/11/17 Java/Android
Python+Tkinter打造签名设计工具
2022/04/01 Python