time、datetime 是python中用于处理日期和时间的模块,常见有3种时间格式
时间格式
- 时间戳
import time
t1 = time.time()
print(t1)
# 输出结果
# 1653959290.2643738
- datetime格式
import datetime
t2 = datetime.datetime.now()
print(t2)
# 输出结果
# 2022-05-31 09:10:55.045939
- 字符串格式
import datetime
str_time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")
print(str_time)
# 输出结果(字符串)
# 2022-05-31 09:13:20
时间格式间的转换
- 字符串 → datetime类型
from datetime import datetime
str_time = '2022-5-31'
date_time = datetime.strptime(str_time, '%Y-%m-%d')
print(type(date_time), date_time)
# 输出结果
# <class 'datetime.datetime'> 2022-05-31 00:00:00
- datetime类型 → 字符串
from datetime import datetime
date_time = datetime.now() # 2022-05-31 09:26:53.873529
str_time = datetime.strftime(date_time, '%Y-%m-%d %H:%M')
print(type(str_time), str_time)
# 输出结果
# <class 'str'> 2022-05-31 09:26
- 时间戳 → datetime类型
import time
from datetime import datetime
timeStamp = time.time() # 1653961491.1730018
date_time = datetime.fromtimestamp(timeStamp)
print(type(date_time), date_time)
# 输出结果
# <class 'datetime.datetime'> 2022-05-31 09:44:51.173002
- datetime类型 → 时间戳
import time
from datetime import datetime
date_time = datetime.now() # 2022-05-31 09:49:38.331118
timeStamp = int(time.mktime(date_time.timetuple()))
print(type(timeStamp), timeStamp)
# 输出结果
# <class 'int'> 1653961778
- 时间戳 → 字符串
import time
now = time.time() # 1653960670.8952417
str_time = time.strftime("%Y-%m-%d %H:%M:%S")
print(type(str_time), str_time)
# 输出结果
# <class 'str'> 2022-05-31 09:31:10
- 字符串 → 时间戳
import time
str_time = '2022-05-31 09:31:50'
# 转为时间数组
timeArray = time.strptime(str_time, "%Y-%m-%d %H:%M:%S")
# 转为时间戳
timeStamp = int(time.mktime(timeArray))
print(type(timeStamp), timeStamp)
# 输出结果
# <class 'int'> 1653960710