time模块的用法

##time模块

  • 计算机的起始时间:
    • 英国伦敦时间: 1970.1.1.0:0:0
    • 北京时间: 1970.1.1.8:0:0
  • 时间戳时间:
    • time.time()获取当前时间的时间戳
    • 时间戳是一个float格式的,例如:1581652597.4924521
  • 格式化时间(str format time):
    • time.strftime('%Y-%m-%d %H:%m:%s')
    • 输出的结果是:2020-02-14 11:02:1581652723
    • A:表示的是星期几
    • str数据类型
    • 注意:Y、H、M、S必须大写,m、d是小写,如果Y改成y,那么年份只显示后半部分,例如:2021显示为21
  • 结构化时间:
    • time_obj = time.localtime()获取当前的结构化时间
    • 输出格式:time.struct_time(tm_year=2020, tm_mon=2, tm_mday=14, tm_hour=11, tm_min=50, tm_sec=15, tm_wday=4, tm_yday=45, tm_isdst=0)
    • time对象类型

    结构化时间是时间戳时间向格式化时间转换的中间类型的时间,并且可以通过time_obj.属性获取每一个属性对应的值。

时间戳时间是给机器看的,格式化时间是给人看的,结构化时间是时间戳时间和格式化时间之间转换的中间状态

graph LR A[时间戳时间]--gmtime:格林威治时间-->B[结构化时间] A[时间戳时间]--localtime:北京时间-->B[结构化时间] B[结构化时间]--strftime-->C[格式化时间] C[格式化时间]--strptime-->B[结构化时间] B[结构化时间]--mktime-->A[时间戳时间]

时间格式的转换:

  • strptime('需要被转换的时间', '转换的格式')
  • strftime('转换格式', 转换对象)
'''时间转换'''
print(time.time())

time_obj = time.localtime(1581655609)
str_time = time.strftime('%H-%m-%d %H:%M:%S', time_obj)
# 从结构化时间戳转换为格式化时间需要两个参数:格式化要求和结构化时间对象
print(str_time)
time_obj = time.strptime('2020-02-14', '%Y-%m-%d')
print(time_obj)
time = time.mktime(time_obj)
print(time)

你可能感兴趣的:(time模块的用法)