目录
简介
在项目开发中做功能经常会用到关于时间的操作。比如会员过期的定时任务,一些代码的延迟执行。在python中比较常用的三个时间模块分别是:time、calendar、datetime模块。今天介绍的是calendar模块。该模块与日历有关。接下来介绍一些常用的函数。
calendar()
该函数返回某年的日历。
代码演示:
>>> import calendar
>>> print(calendar.calendar(2022))
运行结果:
2022
January February March
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 1 2 3 4 5 6 1 2 3 4 5 6
3 4 5 6 7 8 9 7 8 9 10 11 12 13 7 8 9 10 11 12 13
10 11 12 13 14 15 16 14 15 16 17 18 19 20 14 15 16 17 18 19 20
17 18 19 20 21 22 23 21 22 23 24 25 26 27 21 22 23 24 25 26 27
24 25 26 27 28 29 30 28 28 29 30 31
31
April May June
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 1 1 2 3 4 5
4 5 6 7 8 9 10 2 3 4 5 6 7 8 6 7 8 9 10 11 12
11 12 13 14 15 16 17 9 10 11 12 13 14 15 13 14 15 16 17 18 19
18 19 20 21 22 23 24 16 17 18 19 20 21 22 20 21 22 23 24 25 26
25 26 27 28 29 30 23 24 25 26 27 28 29 27 28 29 30
30 31
July August September
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 3 1 2 3 4 5 6 7 1 2 3 4
4 5 6 7 8 9 10 8 9 10 11 12 13 14 5 6 7 8 9 10 11
11 12 13 14 15 16 17 15 16 17 18 19 20 21 12 13 14 15 16 17 18
18 19 20 21 22 23 24 22 23 24 25 26 27 28 19 20 21 22 23 24 25
25 26 27 28 29 30 31 29 30 31 26 27 28 29 30
October November December
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su
1 2 1 2 3 4 5 6 1 2 3 4
3 4 5 6 7 8 9 7 8 9 10 11 12 13 5 6 7 8 9 10 11
10 11 12 13 14 15 16 14 15 16 17 18 19 20 12 13 14 15 16 17 18
17 18 19 20 21 22 23 21 22 23 24 25 26 27 19 20 21 22 23 24 25
24 25 26 27 28 29 30 28 29 30 26 27 28 29 30 31
31
month()
该函数返回某年某月的日历。第一个数为年份,第二个数为月份
代码演示:
>>> import calendar
>>> print(calendar.month(2022,12))
运行结果:
December 2022
Mo Tu We Th Fr Sa Su
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
isleap()
该函数可以判断某年是不是闰年。
代码演示:
>>> import calendar
>>> calendar.isleap(2020)
True
>>> calendar.isleap(2022)
False
leapdays()
该函数返回某两年之间的闰年总数。第一个数为起始年份,第二个数为终止年份。
代码演示:
>>> import calendar
>>> calendar.leapdays(2000, 2022)
6
monthcalendar()
该函数以嵌套列表的形式返回某年某个月的日历。
代码演示:
>>> import calendar
>>> calendar.monthcalendar(2022, 12)
[[0, 0, 0, 1, 2, 3, 4], [5, 6, 7, 8, 9, 10, 11], [12, 13, 14, 15, 16, 17, 18], [19, 20, 21, 22, 23, 24, 25], [26, 27, 28, 29, 30, 31, 0]]
monthrange()
该函数返回两个整数,参数:第一个为年份,第二个为月份;结果:第一个数为某月第一天为星期几,第二个数为该月有多少天。
代码演示:
>>> import calendar
>>> calendar.monthrange(2012, 12)
(5, 31)
>>> calendar.monthrange(2022, 12)
(3, 31)
>>> calendar.monthrange(2018, 10)
(0, 31)
0表示星期一,31表示有31天
timegm()
该函数将一个元组时间变成时间戳。
代码演示:
>>> import time
>>> import calendar
>>> calendar.timegm(time.localtime())
1670523279
总结
本文介绍了Python中的时间模块之一,calendar模块。