1、日期字符串和日期格式相互转换
由字符串格式转化为日期格式的函数为: datetime.datetime.strptime()
由日期格式转化为字符串格式的函数为: datetime.datetime.strftime()
# encoding: utf-8
import datetime
def main():
timeFormat = "2020-2-18 10:54:45"
print("时间格式字符串 {0} 转换为 日期类型(<class 'datetime.datetime'>)".format(timeFormat))
day = datetime.datetime.strptime('2020-2-18 10:54:45', '%Y-%m-%d %H:%M:%S')
print("转换以后的日期 {0}".format(day))
print("日期类型 {0}".format(type(day)))
print("日期类型(<class 'datetime.datetime'>)转换为 时间格式字符串 {0} ".format(timeFormat))
day = datetime.datetime.strftime(day, '%Y-%m-%d %H:%M:%S')
print("转换以后的字符 {0}".format(day))
print("字符串类型 {0}".format(type(day)))
if __name__ == '__main__':
main()
运行结果
2、日期格式、字符串、时间戳之间相互转换
# encoding: utf-8
import datetime
import time
from datetime import datetime
def main():
# 字符类型的时间
timeFormat = '2021-12-01 10:59:59'
print("字符类型日期时间 {0}".format(timeFormat))
# 转为时间数组
timeArray = time.strptime(timeFormat, "%Y-%m-%d %H:%M:%S")
print("转为时间数组 {0}".format(timeArray))
# 转为时间戳
timeStamp = int(time.mktime(timeArray))
print("日期 {0} 转换时间戳 {1}".format(timeFormat, timeStamp))
timeStampTwo = int(datetime.strptime(timeFormat, "%Y-%m-%d %H:%M:%S").timestamp())
print("日期 {0} 转换时间戳 {1}".format(timeFormat, timeStampTwo))
print("更改str类型日期的显示格式")
# 转为数组
timeArray = time.strptime(timeFormat, "%Y-%m-%d %H:%M:%S")
# 转为其它显示格式
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
print("原生时间格式 {0}, 转换之后 {1}".format(timeFormat, otherStyleTime))
print("时间戳转换日期格式")
# time获取当前时间戳
timeInt = int(time.time())
# 把当前时间戳转换为日期数组
timeArray = time.localtime(timeInt)
# 日期数组转换日期格式
otherStyleTime = time.strftime("%Y/%m/%d %H:%M:%S", timeArray)
print("获取当前时间戳 {0} 转换日期 {1}".format(timeInt, otherStyleTime))
if __name__ == '__main__':
main()
运行结果