Python日期时间datetime库与dateutil库典型示例与详解(6)--dateutil库rrule类常用例子

本文示例的引用方式为:

from dateutil.relativedelta import *
from dateutil.rrule import *

关于python的import和名字空间,请参考之前文章:

《Python日期时间datetime库与dateutil库典型示例与详解(1)--datetime库简介&datetime库date类常用例子》

   

rrule类能依据各种复杂规则(频率、间隔等),在指定的时间段内生成我们需要的时间对象列表;rrule有几个重要参数freq, interval count, dtstartuntil,我们先看例子:

1、今天开始的后续4个星期六的具体日期

datelist = list(rrule(freq=WEEKLY,byweekday=SA,dtstart=date.today(),count=4))

2、某日期区间的所有星期六和星期天

start_dt = date(2023,1,1)

end_dt = date(2023,3,31)

dts=list(rrule(freq=WEEKLY,byweekday=(SA,SU),dtstart= start_dt,until= end_dt))

3、今天开始的后续4个每双周的星期3的具体日期

today = date.today()

dtlist = list(rrule(freq=WEEKLY,count=4,interval=2,byweekday=WE,dtstart= today))

4、2023年每月的第1个星期六

dts=list(rrule(freq= MONTHLY,count=12,byweekday=SA,dtstart=date(2023,1,1)))

5、dateutil库rrule的常用参数

(1)freq

YEARLY, MONTHLY, WEEKLY, DAILY, HOURLY, MINUTELY, SECONDLY

重复的频次的时间单位

(2)interval

间隔,比如每2小时,那就是freq= HOURLY, interval = 2

(3) dtstart

开始时间,date和datetime对象都可以

(4)count, until

他们通常是21配置,count是多少个位置, until用于时间区间到此时间截止

Countuntil组合使用时,那个条件先到先截止.

(5) byweekday

获取星期x是 最常用场景,可以同时抓取几个,例如:byweekday=(SA,SU)

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值