V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
WilliamwAn
V2EX  ›  Python

[新人报道] 求教大家 python 问题,希望可以给我个思路,只求思路不求 code

  •  
  •   WilliamwAn · 2015-11-17 13:34:56 +08:00 · 2083 次点击
    这是一个创建于 3323 天前的主题,其中的信息可能已经有所发展或是发生改变。
    [背景] 说实话 python 从前年就断断续续的在自学了,一直都是断断续续的,因为工作没有用到,所以学的很没有目的性,最近想换工作也想学点东西,又捡起来学习了,基本语法都看过,就是对模块和思想还是差很多,没有学过模块
    [目的] 想直接用实际项目来练手学习,办公室有台电脑,每天下班都要人为的去关机,我想用 Python 实现每天晚上 5 点自动关机,应该怎么实现
    我知道应该用模块有 os , time , sys 也知道大概是要获取当前时间 与 17 : 00 进行比对 如果大于 17 : 00 就进行 shuedown 操作( c:\\windows\\system32\\shutdown -s )
    问题 1 、怎么实现这个时间的对比, python 的语法是不能识别诸如
    if(time.localtime()>17:00):
    问题 2 、怎么实现每天不用去点那个脚本,能够到点自动执行这个脚本,这里完全没有思路
    问题 3 、是否可以完善这个脚本,到 17 : 00 会有个 30s 的倒计时,如果不操作则关机,操作可以取消,这个是后续考虑的 也没用任何头绪

    求教大家,谢谢!
    meloncrashed
        1
    meloncrashed  
       2015-11-17 14:36:13 +08:00
    回答 1: 你的 目标时间 与 当前时间 都转换 unix time ,使用 time module, 作差就好了。
    回答 2: 你必须 监控时间 比如每半小时比较当前时间与目标时间, 当当前时间与目标时间接近到一定程度时 运行脚本
    回答 3 : 控制台等待字符输入, 通过判断输入数据 决定是否中断自己
    matthewgao
        2
    matthewgao  
       2015-11-17 17:07:06 +08:00
    t= time.strptime("17:00", "%H:%M")
    if time.localtime() > t :
    # do some magic
    matthewgao
        3
    matthewgao  
       2015-11-17 17:27:27 +08:00
    问题 3 ,你可以弹窗,这个很容易
    mengzhuo
        4
    mengzhuo  
       2015-11-18 09:02:46 +08:00
    啥操作系统都不说,怎么破?
    unix 系的这些都好办

    2. crontab
    3. 各种 notify 满足要求
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6104 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:23 · PVG 10:23 · LAX 18:23 · JFK 21:23
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.