1.time模块
import time
# 获取当前时间的时间戳,以s为单位
timestamp = time.time()
print(timestamp, type(timestamp))
# 输出1583127227.7372458 <class 'float'># 将时间戳转换为UTC时间
g = time.gmtime(timestamp)
print(g)
# 输出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=5, tm_min=33, tm_sec=47, tm_wday=0, tm_yday=62, tm_isdst=0)# 将时间戳转换成本地时间
l = time.localtime(timestamp)
print(l)
# 输出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=13, tm_min=33, tm_sec=47, tm_wday=0, tm_yday=62, tm_isdst=0)# 将UTC时间转换成时间戳
timestamp2 = time.mktime(g)
print(timestamp2)
# 输出 1583098427.0# 将本地时间转换成时间戳
timestamp3 = time.mktime(l)
print(timestamp3)
# 输出 1583127227.0# 将特定时间转换成时间戳
timestamp4 = time.mktime((2020, 3, 2, 13, 20, 47, 0, 62, 0))
# 参数解释: 2020年3月2日13点20分47秒,0代表星期一,是今年的第62天,0代表夏令时
print(timestamp4)
# 输出 1583126447.0# 将时间戳可视化
timestamp5 = time.ctime(timestamp4)
print(timestamp5)
# 输出 Mon Mar 2 13:20:47 2020
# 将时间元组转换成时间字符串
s = time.strftime("%Y:%m:%d %H:%M:%S", l)
print(s) # 输出 2020:03:02 13:44:25
# 将时间字符串转换成时间元组
p = time.strptime("2020-3-2 13:20:45","%Y-%m-%d %H:%M:%S")
print(p)
# 输出 time.struct_time(tm_year=2020, tm_mon=3, tm_mday=2, tm_hour=13, tm_min=20, tm_sec=45, tm_wday=0, tm_yday=62, tm_isdst=-1)# 使程序进入休眠状态 5秒
print(time.time()) # 输出1583128091.2465198
time.sleep(5)
print(time.time()) # 输出1583128096.24725
2.datatime模块
import datetime
# 获取当前时间
currentTime = datetime.datetime.now()
print(currentTime, type(currentTime)) # 输出 2020-03-02 13:52:35.584804 <class 'datetime.datetime'># 将指定时间转换成时间字符串
timeStr = currentTime.strftime('%Y-%m-%d')
print(timeStr, type(timeStr)) # 输出 2020-03-02 <class 'str'># 根据时间元组获取时间
currentTime1 = datetime.datetime(2020, 3, 2, 13, 52, 35, 584804)
print(currentTime1, type(currentTime1)) # 输出 2020-03-02 13:52:35.584804 <class 'datetime.datetime'># 把时间字符串转换成时间
currentTime2 = datetime.datetime.strptime(timeStr, '%Y-%m-%d')
print(currentTime2, type(currentTime2)) # 输出 2020-03-02 00:00:00 <class 'datetime.datetime'>
3.calendar
import calendar
# 获取指定年和月日历形式
print(calendar.month(2020, 3))
'''输出:March 2020
Mo Tu We Th Fr Sa Su12 3 4 5 6 7 89 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
'''
# 二维列表形式展现
print(calendar.monthcalendar(2020, 3))
# 输出 [[0, 0, 0, 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, 0, 0, 0, 0]]
# 年份区间段里, 有几个闰年
print(calendar.leapdays(2000, 2020)) # 输出 5# 指定月份第一天是周几,一共有多少天
print(calendar.monthrange(2020, 3)) # 输出 (6, 31) 6:表示周日 因为程序是从0开始计算的# 判断指定日期是星期几
print(calendar.weekday(2020, 3, 2)) # 输出0 说明是星期一# 查看一年的日历
print(calendar.calendar(2020))
'''输出2020January February March
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su1 2 3 4 5 1 2 16 7 8 9 10 11 12 3 4 5 6 7 8 9 2 3 4 5 6 7 8
13 14 15 16 17 18 19 10 11 12 13 14 15 16 9 10 11 12 13 14 15
20 21 22 23 24 25 26 17 18 19 20 21 22 23 16 17 18 19 20 21 22
27 28 29 30 31 24 25 26 27 28 29 23 24 25 26 27 28 2930 31April May June
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su1 2 3 4 5 1 2 3 1 2 3 4 5 6 76 7 8 9 10 11 12 4 5 6 7 8 9 10 8 9 10 11 12 13 14
13 14 15 16 17 18 19 11 12 13 14 15 16 17 15 16 17 18 19 20 21
20 21 22 23 24 25 26 18 19 20 21 22 23 24 22 23 24 25 26 27 28
27 28 29 30 25 26 27 28 29 30 31 29 30July August September
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su1 2 3 4 5 1 2 1 2 3 4 5 66 7 8 9 10 11 12 3 4 5 6 7 8 9 7 8 9 10 11 12 13
13 14 15 16 17 18 19 10 11 12 13 14 15 16 14 15 16 17 18 19 20
20 21 22 23 24 25 26 17 18 19 20 21 22 23 21 22 23 24 25 26 27
27 28 29 30 31 24 25 26 27 28 29 30 28 29 3031October November December
Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su Mo Tu We Th Fr Sa Su1 2 3 4 1 1 2 3 4 5 65 6 7 8 9 10 11 2 3 4 5 6 7 8 7 8 9 10 11 12 13
12 13 14 15 16 17 18 9 10 11 12 13 14 15 14 15 16 17 18 19 20
19 20 21 22 23 24 25 16 17 18 19 20 21 22 21 22 23 24 25 26 27
26 27 28 29 30 31 23 24 25 26 27 28 29 28 29 30 3130
'''