croniter提供了类似于cron格式的datetime对象的迭代功能
项目描述
简介
croniter提供了类似于cron格式的datetime对象的迭代功能。
_ _ ___ _ __ ___ _ __ (_) |_ ___ _ __ / __| '__/ _ \| '_ \| | __/ _ \ '__| | (__| | | (_) | | | | | || __/ | \___|_| \___/|_| |_|_|\__\___|_|
Travis徽章
用法
使用示例如下
>>> from croniter import croniter >>> from datetime import datetime >>> base = datetime(2010, 1, 25, 4, 46) >>> iter = croniter('*/5 * * * *', base) # every 5 minites >>> print iter.get_next(datetime) # 2010-01-25 04:50:00 >>> print iter.get_next(datetime) # 2010-01-25 04:55:00 >>> print iter.get_next(datetime) # 2010-01-25 05:00:00 >>> >>> iter = croniter('2 4 * * mon,fri', base) # 04:02 on every Monday and Friday >>> print iter.get_next(datetime) # 2010-01-26 04:02:00 >>> print iter.get_next(datetime) # 2010-01-30 04:02:00 >>> print iter.get_next(datetime) # 2010-02-02 04:02:00
您需要了解构造函数和get_next,这些签名如下
>>> def __init__(self, cron_format, start_time=time.time())
croniter从’start_time’开始,根据‘cron_format’进行迭代。cron_format是‘min hour day month day_of_week’,有关详细信息,请参阅http://en.wikipedia.org/wiki/Cron。
>>> def get_next(self, ret_type=float)
get_next返回迭代中的下一个时间,并带有‘ret_type’。ret_type仅接受‘float’或‘datetime’。
现在,支持get_prev方法。(>= 0.2.0)
>>> base = datetime(2010, 8, 25) >>> itr = croniter('0 0 1 * *', base) >>> print itr.get_prev(datetime) # 2010-08-01 00:00:00 >>> print itr.get_prev(datetime) # 2010-07-01 00:00:00 >>> print itr.get_prev(datetime) # 2010-06-01 00:00:00
开发此包
git clone https://github.com/kiorky/croniter.git cd croniter python bootstrap.py -d bin/buildout -vvvvvvN bin/test
创建新版本
我们使用zest.fullreleaser,一个出色的发布基础设施。
遵循以下说明
bin/fullrelease
贡献者
感谢所有为该项目做出贡献的人!如果您做出了贡献但未列在下面,请告知我。
mrmachine
Hinnack
shazow
kiorky
jlsandell
mag009
djmitche
GreatCombinator
chris-baynes
ipartola
yuzawa-san
变更日志
0.3.12 (未发布)
尚未有任何更改。
0.3.11 (2016-01-13)
错误修复:当使用最后一天标记时,get_prev API崩溃。缺少一些基本逻辑。[Iddo Aviram <iddo.aviram@similarweb.com>]
0.3.10 (2015-11-29)
‘l’作为月份中的天数的功能已损坏,因为月份变量未正确更新 [Iddo Aviram <iddo.aviram@similarweb.com>]
0.3.9 (2015-11-19)
不要使用datetime函数,Python 2.6不支持 [petervtzand]
0.3.8 (2015-06-23)
通过设置为0截断微秒 [Corey Wright]
0.3.7 (2015-06-01)
将范围sun-thu的sun转换为int 0,这被识别为空字符串;解决方案是将sun转换为字符串“0”
0.3.6 (2015-05-29)
修复没有提供start_time时的默认行为。参数start_time的默认值在模块初始化时计算,而不是在调用时。
修复时区支持,并停止依赖于系统时区
0.3.5 (2014-08-01)
支持‘l’(月底最后一天)
0.3.4 (2014-01-30)
Python 3兼容
质量保证发布
0.3.3 (2012-09-29)
适当的包装
项目详情
croniter-hpx-0.3.12.dev0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 4d9780e0e94779f8897e2ae33781f3cda50a6cb47e3dc1ed1a2e9ab517a3ed36 |
|
MD5 | cd7fc59a1149cc3679e29df7f6f0a7fa |
|
BLAKE2b-256 | eb98d22b1b808b5c855025ee18d79de7e99b5d0436ab23826b134e48cded5cbf |