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

 更新时间:2017年03月21日 15:04:14   作者:Mysotflips  
由于本人经常使用笔记本共享WiFi,但是又不想笔记本开机一夜,每次都是使用dos命令关机,感觉好麻烦,然后小编想到用python写一个定时关机的脚本,具体实例代码请参考本文

由于本人经常使用笔记本共享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标准库进行性能测试

    这篇文章主要为大家详细介绍了如何使用Python标准库进行性能测试,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • pycharm设置默认的UTF-8编码模式的方法详解

    pycharm设置默认的UTF-8编码模式的方法详解

    这篇文章主要介绍了pycharm设置默认的UTF-8编码模式,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 基于python实现动态烟雾效果

    基于python实现动态烟雾效果

    动态烟雾效果常用于游戏和动画中,为场景增添 逼真的视觉效果,在这篇博客中,我们将使用Python和Pygame库来创建一个逼真的烟雾动画效果,感兴趣的小伙伴跟着小编一起来看看吧
    2024-09-09
  • 每日python小白之如何打印九九乘法表

    每日python小白之如何打印九九乘法表

    这篇文章主要给大家介绍了关于用python如何打印九九乘法表的相关资料,包括初级版和完整版,初级版通过双层循环输出每个乘法表的行,完整版通过调整内层循环的范围,使得每行的乘法表输出更加规范,文章还提供了代码解释和一些小技巧,需要的朋友可以参考下
    2024-11-11
  • git进行版本控制心得详谈

    git进行版本控制心得详谈

    这篇文章主要介绍了git进行版本控制的心得和经验,给并大家总结了作者的技巧,需要的朋友们参考一下吧。
    2017-12-12
  • Python 装饰器原理、定义与用法详解

    Python 装饰器原理、定义与用法详解

    这篇文章主要介绍了Python 装饰器原理、定义与用法,结合实例形式分析了Python装饰器的概念、定义、实现方法、应用场景及相关操作注意事项,需要的朋友可以参考下
    2019-12-12
  • python操作日期和时间的方法

    python操作日期和时间的方法

    经常获得了一个用户提交的当前日期,我们需要以这个日期为依据返回它的前一天、后一天的日期或者转换操作等。用Python可以非常简单的解决这些关于日期计算的问题
    2014-03-03
  • python3+PyQt5 实现Rich文本的行编辑方法

    python3+PyQt5 实现Rich文本的行编辑方法

    今天小编就为大家分享一篇python3+PyQt5 实现Rich文本的行编辑方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-06-06
  • Python中Selenium的基本使用步骤

    Python中Selenium的基本使用步骤

    Selenium是一个用于自动化浏览器操作的Python库,常用于Web应用的测试和爬虫等场景,本文给大家介绍Python中Selenium的基本使用教程,感兴趣的朋友一起看看吧
    2023-11-11
  • Python操作Excel把数据分给sheet

    Python操作Excel把数据分给sheet

    这篇文章主要介绍了Python操作Excel把数据分给sheet,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05

最新评论