用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循环语句中else的用法总结
Sep 11 Python
python中如何使用正则表达式的非贪婪模式示例
Oct 09 Python
python2.7到3.x迁移指南
Feb 01 Python
Python yield与实现方法代码分析
Feb 06 Python
Python基于socket模块实现UDP通信功能示例
Apr 10 Python
对Tensorflow中的变量初始化函数详解
Jul 27 Python
pytorch 加载(.pth)格式的模型实例
Aug 20 Python
Django对接支付宝实现支付宝充值金币功能示例
Dec 17 Python
使用tensorflow实现VGG网络,训练mnist数据集方式
May 26 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
Python编程源码报错解决方法总结经验分享
Oct 05 Python
python内置模块之上下文管理contextlib
Jun 14 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
PHP4与PHP5的时间格式问题
2008/02/17 PHP
PHP写MySQL数据 实现代码
2009/06/15 PHP
php 分库分表hash算法
2009/11/12 PHP
ubuntu 编译安装php 5.3.3+memcache的方法
2010/08/05 PHP
KindEditor在php环境下上传图片功能集成的方法示例
2020/07/20 PHP
正则表达式搭配js轻松处理json文本方便而老古
2013/02/17 Javascript
JavaScript支持的最大递归调用次数分析
2014/06/24 Javascript
express的中间件cookieParser详解
2014/12/04 Javascript
jQuery实现企业网站横幅焦点图切换功能实例
2015/04/30 Javascript
JS实现仿微博可关闭弹出层效果
2015/09/21 Javascript
Node.js connect ECONNREFUSED错误解决办法
2016/09/15 Javascript
js实现会跳动的日历效果(完整实例)
2017/10/18 Javascript
Vue2.0 axios前后端登陆拦截器(实例讲解)
2017/10/27 Javascript
Servlet3.0与纯javascript通过Ajax交互的实例详解
2018/03/18 Javascript
小程序开发基础之view视图容器
2018/08/21 Javascript
vue.js父子组件通信动态绑定的实例
2018/09/28 Javascript
Vue动态生成el-checkbox点击无法赋值的解决方法
2019/02/21 Javascript
基于jQuery实现挂号平台首页源码
2020/01/06 jQuery
Python实现的一个简单LRU cache
2014/09/26 Python
Python中线程编程之threading模块的使用详解
2015/06/23 Python
利用python爬取斗鱼app中照片方法实例
2017/12/03 Python
python Crypto模块的安装与使用方法
2017/12/21 Python
解决Django layui {{}}冲突的问题
2019/08/29 Python
编译 pycaffe时报错:fatal error: numpy/arrayobject.h没有那个文件或目录
2020/11/29 Python
pandas数据分组groupby()和统计函数agg()的使用
2021/03/04 Python
台湾旅游网站:灿星旅游
2018/10/11 全球购物
广告学专业推荐信范文
2013/11/23 职场文书
小学毕业家长寄语
2014/01/19 职场文书
关于圣诞节的广播稿
2014/01/26 职场文书
如何撰写岗位职责
2014/02/01 职场文书
租车协议书范本2014
2014/11/17 职场文书
停车场管理制度范本
2015/08/05 职场文书
委托开发合同书(标准版)
2019/08/07 职场文书
经典法律座右铭(50句)
2019/08/15 职场文书
Python中使用ipython的详细教程
2021/06/22 Python
Pygame游戏开发之太空射击实战敌人精灵篇
2022/08/05 Python