Python关于时间序列calendar模块的深入讲解
大家好,在之前的文章中详细介绍了time和datetime模块的使用。这两个模块更多的是用于处理时间和日期相关的问题。
本文介绍的是第三个模块calendar,则主要是用于解决日历方面的问题。
中文官网地址:https://docs.python.org/zh-cn/3/library/calendar.html
calendar模块
该模块定义了很多类型,主要包括:Calendar、TextCalendar、HTMLCalendar,其中 Calendar 是 TextCalendar 和 HTMLCalendar 的基类,这些类有着十分丰富的日历处理方法。
同时ISO 8601标准还规定了 0 和 负数年份。0年指公元前1年, -1年指公元前2年,依此类推。使用之前先进行导入:
import calendar
首先我们可以看看2021年的完整日历:
文章图片
设置每周第一天-setfirstweekday 【Python关于时间序列calendar模块的深入讲解】默认情况下:0 表示星期一,6 表示星期天。我们可以通过
setfirstweekday()
来设置一周的第一天为星期天 (6) 或者其它任意一天1、默认情况:礼拜一是第一天
文章图片
2、设置任意一天
下面的例子中我们设置周六作为第一天
文章图片
是否闰年-isleap 查看一个年份是否是闰年。是则返回True,否则返回False
文章图片
年份间的闰年数-leapdays(y1, y2) 查看两个年份之间有多少闰年。比如第二个例子中,从2000年开始到2021年共有6个闰年
文章图片
星期几-weekday(year, month, day) 查看一个具体的日期是星期几。比如第二例子中,11月1号是星期一,用0表示
- 0:星期1
- 1:星期2
- 2:星期3
文章图片
monthrange(year, month) 返回指定年、月份第一天是星期几和这个月的天数,具体示例如下:
10月份的第一天是星期五,11月份的第一天是星期一(0代表周一)
文章图片
通过万年历来验证下:11.1刚好是星期一
文章图片
月的日历矩阵-monthcalendar(year, month) 返回某个月的日历矩阵:
- 每行代表1个星期
- 默认从周一开始,比如11月份的1号刚好是周一
- 此月份外的日子由零表示
文章图片
月的日历-prmonth(year, month, w, l) 返回的是一个月的日历,每日宽度间隔为 w 字符,l 是每星期的行数
下面是默认的情况:
文章图片
可以改变参数w和l:相当于是一个控制列宽,一个控制行高
文章图片
年的日历-calendar.calendar(year) 全部使用默认参数,查看某年的完整日历:
文章图片
格式化输出日历 在上面输出年的日历的结果中都是采用的默认参数形式。实际上calendar方法是存在多个参数的:
- w:每个单元格宽度,默认是2
- l:每列换行数,默认是1
- c:月和月之间的间隔宽度,默认是6
- m:将月份分成m个列
文章图片
改变多个参数后显示的效果:
文章图片
文章图片
技术交流 欢迎转载、收藏、有所收获点赞支持一下!
文章图片
目前开通了技术交流群,群友已超过2000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友
方式①、发送如下图片至微信,长按识别,后台回复:加群;方式②、添加微信号:dkl88191,备注:来自CSDN方式③、微信搜索公众号:Python学习与数据挖掘,后台回复:加群
以上就是Python关于时间序列calendar模块的深入讲解的详细内容,更多关于Python 时间序列的资料请关注脚本之家其它相关文章!
推荐阅读
- 关于QueryWrapper|关于QueryWrapper,实现MybatisPlus多表关联查询方式
- python学习之|python学习之 实现QQ自动发送消息
- 四首关于旅行记忆的外文歌曲
- 逻辑回归的理解与python示例
- 醒不来的梦
- python自定义封装带颜色的logging模块
- 【Leetcode/Python】001-Two|【Leetcode/Python】001-Two Sum
- Python基础|Python基础 - 练习1
- Python爬虫|Python爬虫 --- 1.4 正则表达式(re库)
- 关于自我为中心的一点感想