• 时间戳:
    • 转字符串
    • 转时间元组
  • 字符串
    • 转时间戳
    • 转时间元组
  • 时间元组
    • 转字符串
    • 转时间戳

时间戳转

import time
from datetime import datetime
 
# 可手动指定
time_stamp = time.time() #1633763846.883627
 
# 转元组
time.gmtime(time_stamp)   # UTC 时间
time.localtime(time_stamp)
# 返回 time.struct_time(tm_year=2021, tm_mon=10, tm_mday=11, tm_hour=20, tm_min=4, tm_sec=50, tm_wday=0, tm_yday=284, tm_isdst=0)
datetime.fromtimestamp(time_stamp)
# 返回 datetime.datetime(2021, 10, 11, 20, 4, 3, 315279)
 
# 转指定字符串格式
# strftime 需要先把时间戳转成元组格式
time.strftime('%Y-%m-%d %H:%M%S', time.localtime(time_stamp))
datetime.utcfromtimestamp(time_stamp).strftime('%Y-%m-%d %H:%M:%S')
# 返回 2011-11-11 06:07:42

字符串转

from datetime import datetime
 
# 转时间元组(date.isoformat() 逆操作)
datetime.fromisoformat('2021-12-12 06:07:42')
# 返回 datetime.datetime(2021, 12, 12, 6, 7, 42)

指定格式转 datetime

from datetime import time
 
# 转换 20220329_002128 为 datetime 格式
datetime.strptime('20220329_002128', '%Y%m%d_%H%M%S')
# 返回 datetime.datetime(2022, 3, 29, 0, 21, 28)

时间元组转

import time
from datetime import datetime
 
# 转时间戳
time.mktime(time.localtime())  # 可自行提供9个参数
 
# 转字符串
time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
datetime.now().strftime('%Y-%m-%d %H:%M:%S')
# 返回 2021-10-11 23:24:21