

今天是感恩节,在此感谢大家的关注。
西方传统的节日很多并不是具体的某个日期,而是以当月的第几周星期几来确定,所以每年的日期会不一样,今天带来节日的日期计算包,希望大家喜欢。
Borax介绍
Borax是一个Pyton3开发工具集合,里面有一些常见的工具,数据结构和函数封装。
今天将使用Borax.Calendars这个计算库来计算节日。
安装Borax:
pip install borax
节日库
borax.calendars.festivals
是节日的计算库,里面有多种类可以使用。
- DateSchema 日期模式
- SolarSchema 公历日期
- WeekSchema 依赖星期公历日期
- TermSchema 依赖节气的公历日期
- LunarSchema 农历日期
- DayLunarSchema 依赖具体日的农历日期
在这里我们是依赖星期来计算公历日期,会使用到WeekSchema这个类
感恩节日期
首先,我们导入WeekSchema这个类
from borax.calendars.festivals import WeekSchema
WeekSchema的初始化如下:
WeekSchema(month, index, week, year=YEAR_ANY, kwargs)
具体参数解释




美国的感恩节是11月的第四周星期四,具体调用如下:
m=WeekSchema(month=11,index=4,week=3)
- 11 表示11月
- 4 表示 第四周
- 3 表示 星期四
如果想要知道2019年的感恩节日期,可以使用resolve方法
>>> from borax.calendars.festivals import WeekSchema
>>> m = WeekSchema(month=11,index=4,week=3)
>>> m.resolve(2019)
datetime.date(2019, 11, 28)
加拿大的感恩节是十月第二个星期一,那么今年的日期为:
>>> m = WeekSchema(month=10,index=2,week=2)
>>> m.resolve(2019)
datetime.date(2019, 10, 14)
如果你身在加拿大,就已经提前吃火鸡啦。
总结
festivals节日包还可以做很多具体的应用,包括计算节日的距离天数等。其他的方法可以参考官方文档。
原创文章,作者:flypython,如若转载,请注明出处:http://flypython.com/tutorial/123.html
您必须登录才能发表评论。