1 import time
2
3 """
4
5 常用方法
6 1.time.sleep(secs)
7 (线程)推迟指定的时间运行。单位为秒。
8 2.time.time()
9 获取当前时间戳
10 在Python中,通常有这三种方式来表示时间:时间戳、结构化时间(元组)、格式化时间(字符串):
11 时间戳,表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。(float)
12 格式化时间,这个时间可以根据我们的需要对时间进⾏任意的格式化
13 结构化时间,这个时间主要可以把时间进⾏行行分类划分。用于时间戳与格式化时间的转化,计算。
14 格式化时间字符串
15 %y 两位数的年份表示(00-99)
16 %Y 四位数的年份表示(000-9999)
17 %m 月份(01-12)
18 %d 月内中的一天(0-31)
19 %H 24小时制小时数(0-23)
20 %I 12小时制小时数(01-12)
21 %M 分钟数(00=59)
22 %S 秒(00-59)
23 %a 本地简化星期名称
24 %A 本地完整星期名称
25 %b 本地简化的月份名称
26 %B 本地完整的月份名称
27 %c 本地相应的日期表示和时间表示
28 %j 年内的一天(001-366)
29 %p 本地A.M.或P.M.的等价符
30 %U 一年中的星期数(00-53)星期天为星期的开始
31 %w 星期(0-6),星期天为星期的开始
32 %W 一年中的星期数(00-53)星期一为星期的开始
33 %x 本地相应的日期表示
34 %X 本地相应的时间表示
35 %Z 当前时区的名称
36 %% %号本身
37 """
38
39 # print(time.time()) # 时间戳,给机器看的
40 # print(time.strftime("%Y-%m-%d %H:%M:%S")) # 格式化时间,给人看的
41 # print(time.localtime()) # 结构化时间
42
43 # 时间转化
44 # 格式化时间->结构化时间 strptime p parse
45 # 结构化时间->格式化时间 strftime f format
46 # 结构化时间->时间戳 mktime
47 # 时间戳->结构化时间 localtime gmtime
48
49 # 时间戳-->格式化时间
50 # t = time.localtime(1888888888) # 结构化时间
51 # s = time.strftime("%Y-%m-%d %H:%M:%S", t) # 格式化时间
52 # print(s)
53
54 # 格式化时间-->时间戳
55 # s = '2020-10-01 12:18:12' # 格式化时间
56 # t = time.strptime(s, "%Y-%m-%d %H:%M:%S") # 结构化时间
57 # print(time.mktime(t)) # 时间戳
58
59 # 小结:时间戳是计算机能够识别的时间;时间字符串是人能够看懂的时间;元组则是用来操作时间的
60 # 三者之间的转化,格式化时间 <——> 结构化时间 <-->时间戳, 所有的转化都要通过结构化时间来转化
61
62
63 # 计算时间差(时间戳计算,结构化时间表示)
64 true_time = time.mktime(time.strptime('2017-09-11 08:30:00', '%Y-%m-%d %H:%M:%S'))
65 time_now = time.mktime(time.strptime('2017-09-12 11:00:00', '%Y-%m-%d %H:%M:%S'))
66 dif_time = time_now - true_time
67 struct_time = time.localtime(dif_time)
68 print(struct_time)
69 print('过去了%d年%d月%d天%d小时%d分钟%d秒' % (
70 struct_time.tm_year - 1970, struct_time.tm_mon - 1, struct_time.tm_mday - 1, struct_time.tm_hour,
71 struct_time.tm_min,
72 struct_time.tm_sec))