简介
本文将介绍时间模块之一,calendar模块。该模块与日历有关。接下来介绍一些常用的函数。
calendar.calendar()
该函数返回某年的日历。
代码演示:
import calendar
print(calendar.calendar(2018))
1
2
importcalendar
print(calendar.calendar(2018))
结果为:
2018
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 3 4 5 6 7 1 2 3 4 1 2 3 4
8 9 10 11 12 13 14 5 6 7 8 9 10 11 5 6 7 8 9 10 11
15 16 17 18 19 20 21 12 13 14 15 16 17 18 12 13 14 15 16 17 18
22 23 24 25 26 27 28 19 20 21 22 23 24 25 19 20 21 22 23 24 25
29 30 31 26 27 28 26 27 28 29 30 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 1 2 3 4 5 6 1 2 3
2 3 4 5 6 7 8 7 8 9 10 11 12 13 4 5 6 7 8 9 10
9 10 11 12 13 14 15 14 15 16 17 18 19 20 11 12 13 14 15 16 17
16 17 18 19 20 21 22 21 22 23 24 25 26 27 18 19 20 21 22 23 24
23 24 25 26 27 28 29 28 29 30 31 25 26 27 28 29 30
30
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 1 2 3 4 5 1 2
2 3 4 5 6 7 8 6 7 8 9 10 11 12 3 4 5 6 7 8 9
9 10 11 12 13 14 15 13 14 15 16 17 18 19 10 11 12 13 14 15 16
16 17 18 19 20 21 22 20 21 22 23 24 25 26 17 18 19 20 21 22 23
23 24 25 26 27 28 29 27 28 29 30 31 24 25 26 27 28 29 30
30 31
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 3 4 5 6 7 1 2 3 4 1 2
8 9 10 11 12 13 14 5 6 7 8 9 10 11 3 4 5 6 7 8 9
15 16 17 18 19 20 21 12 13 14 15 16 17 18 10 11 12 13 14 15 16
22 23 24 25 26 27 28 19 20 21 22 23 24 25 17 18 19 20 21 22 23
29 30 31 26 27 28 29 30 24 25 26 27 28 29 30
31
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
32
33
34
35
36
2018
JanuaryFebruaryMarch
MoTuWeThFrSaSuMoTuWeThFrSaSuMoTuWeThFrSaSu
123456712341234
891011121314567891011567891011
151617181920211213141516171812131415161718
222324252627281920212223242519202122232425
293031262728262728293031
AprilMayJune
MoTuWeThFrSaSuMoTuWeThFrSaSuMoTuWeThFrSaSu
1123456123
23456787891011121345678910
91011121314151415161718192011121314151617
161718192021222122232425262718192021222324
2324252627282928293031252627282930
30
JulyAugustSeptember
MoTuWeThFrSaSuMoTuWeThFrSaSuMoTuWeThFrSaSu
11234512
234567867891011123456789
91011121314151314151617181910111213141516
161718192021222021222324252617181920212223
23242526272829272829303124252627282930
3031
OctoberNovemberDecember
MoTuWeThFrSaSuMoTuWeThFrSaSuMoTuWeThFrSaSu
1234567123412
8910111213145678910113456789
151617181920211213141516171810111213141516
222324252627281920212223242517181920212223
293031262728293024252627282930
31
calendar.month()
该函数返回某年某月的日历。
代码演示:
import calendar
print(calendar.month(2018, 10))
1
2
importcalendar
print(calendar.month(2018,10))
结果为:
October 2018
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
1
2
3
4
5
6
7
October2018
MoTuWeThFrSaSu
1234567
891011121314
15161718192021
22232425262728
293031
calendar.isleap()
该函数可以判断某年是不是闰年。
代码演示:
>>>import calendar
>>>calendar.isleap(2018)
False
>>>calendar.isleap(2000)
True
1
2
3
4
5
>>>importcalendar
>>>calendar.isleap(2018)
False
>>>calendar.isleap(2000)
True
calendar.leapdays()
该函数返回某两年之间的闰年总数。
代码演示:
>>>import calendar
>>>calendar.leapdays(2000, 2018)
5
1
2
3
>>>importcalendar
>>>calendar.leapdays(2000,2018)
5
calendar.monthcalendar()
该函数以嵌套列表的形式返回某年某个月的日历。
代码演示:
>>>import calendar
>>>calendar.monthcalendar(2018, 10)
[[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, 0, 0, 0]]
1
2
3
4
5
6
7
8
>>>importcalendar
>>>calendar.monthcalendar(2018,10)
[[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,0,0,0]]
calendar.monthrange()
该函数返回两个整数,第一个数为某月第一天为星期几,第二个数为该月有多少天。
代码演示:
>>>import calendar
>>>calendar.monthrange(2018, 10)
(0, 31)
1
2
3
>>>importcalendar
>>>calendar.monthrange(2018,10)
(0,31)
0表示星期一,31表示有31天。
calendar.timegm()
该函数将一个元组时间变成时间戳。
代码演示:
>>>import time
>>>import calendar
>>>calendar.timegm(time.localtime())
1540926234
1
2
3
4
>>>importtime
>>>importcalendar
>>>calendar.timegm(time.localtime())
1540926234
总结
本文介绍了Python中的时间模块之一,calendar模块。至此python中的时间模块(time、datetime、calendar)就都介绍完毕。时间模块在数据处理方面应用较多,学会将字符串格式的时间转变成可以进行时间差计算的格式,比如datetime类型、时间戳。它的形式很简单,运用的时候要灵活多变,并能熟练掌握时间格式之间的转换。