Python项目中很多时候会需要将时间在Datetime格式和TimeStamp格式之间转化,本文将对python中多个时间储存方式、时间模块(如time、datetime、timeit)以及他们之间的转换关系进行详细的梳理和总结。整体梳理后表示图如下:
共有九个元素组
时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量
已格式化的结构使时间更具可读性。包括自定义格式和固定格式。
创建时间戳
返回当前时间的时间戳(1970纪元后经过的浮点秒数)。
1 2 3 4 5 6 7 |
|
创建结构体时间 | 将时间戳转换为结构体时间(本地)
格式化时间戳为本地的时间,返回结构体时间。若sec参数未输入,则以当前时间为转换。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
将时间戳转换为结构体时间(0时区)
将一个时间戳转换为UTC时区(0时区)的struct_time,可选的参数sec表示从1970-1-1以来的秒数。其默认值为time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象)。
1 2 3 4 5 6 7 8 9 10 11 |
|
将结构体时间转换为字符串
输入结构体时间,输出为按照输入的格式的字符串
1 2 3 4 5 6 7 |
|
将字符串转换为结构体时间
根据指定的格式把一个时间字符串解析为结构体时间。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
|
将结构体时间转换为时间戳 接收struct_time对象作为参数,返回用秒数来表示时间的浮点数。
如果输入的值不是一个合法的时间,将触发 OverflowError 或 ValueError。
1 2 3 4 5 6 7 |
|
推迟执行的秒数,没有任何输出
1 2 3 4 5 6 7 |
|
用来计算一个函数平均执行了多少时间
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 |
|
datetime模块包含如下类
表示日期的类,常用的属性有year、month、day。参数都为整数。
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 |
|
表示时间的类,参数包括hour、minute、second、microsecond。 time类的方法同datetime类。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
|
日期实践类,常用的参数包含year、month、day、hour、minute、second、microsecond。但是至少要包含year、month、day三个参数。
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 37 38 39 40 41 |
|
表示时间间隔类,给一个时间点加上此类,即可得到一个新的时间。参数包含days、hours、minutes、seconds、microseconds。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
|
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 37 38 39 |
|