python定时器使用示例分享

yipeiwu_com6年前Python基础

复制代码 代码如下:

class SLTimer(multiprocessing.Process):
    #from datetime import datetime
    #import time

    def __init__(self, target=None, args=(), kwargs={},date=None,time=None):
        '''\
        @param date 1900-01-01
        @param time 00:00:00
        '''
        super(SLTimer,self).__init__(target=target,args=args,kwargs=kwargs)
        _date = ''
        if date is None:
            _date = datetime.now().__str__()[:10]
        else :
            _date = date

        _time = ''
        if time is None:
            _time = datetime.now().__str__()[11:19]
        else:
            _time = time

        self.__runtime = '%s %s' % (_date,_time)

    def run(self):
        timeLen = len('1900-00-00 00:00:00')

        while True:
            now = datetime.now().__str__()[:timeLen]
            if now>=self.__runtime:
                break
            print 'sleeping... %s' % now
            time.sleep(1.0)

        super(SLTimer,self).run()

测试

复制代码 代码如下:

def show1():
    from datetime import datetime
    print 'hello,current time:%s' % datetime.now().__str__()

def t23():
    from  stock.task import SLTimer

    timer = SLTimer(show1, time='16:31:50')
    timer.start()

相关文章

利用Python批量生成任意尺寸的图片

利用Python批量生成任意尺寸的图片

实现效果 通过源图片,在当前工作目录的/img目录下生成1000张,分别从1*1到1000*1000像素的图片。 效果如下: 目录结构 实现示例 # -*- coding: ut...

python2与python3中关于对NaN类型数据的判断和转换方法

python2与python3中关于对NaN类型数据的判断和转换方法

今天在对一堆新数据进行数据清洗的时候,遇到了一个这样的问题: ValueError: cannot convert float NaN to integer 一开始是这样的,我用...

详解python中自定义超时异常的几种方法

最近在项目中调用第三方接口时候,经常会出现请求超时的情况,或者参数的问题导致调用异代码异常。针对超时异常,查询了python 相关文档,没有并发现完善的包来根据用户自定义的时间来抛出超时...

Python 不同对象比较大小示例探讨

万恶的源泉: Fireboo的疑问(当然 lambda 本身写的就有问题): >>> filter( lambda x: x > 2, [ 1, [ 1, 2...

linux环境下安装pyramid和新建项目的步骤

1. 安装python虚拟环境复制代码 代码如下:virtualenv --no-site-packages env 2. 安装pyramid 复制代码 代码如下:$ env/bin/...