阅读 722

Python3日期与时间戳转换的几种方法

概述

日期和时间的相互转换可以利用Python内置模块timedatetime完成,且有多种方法供我们选择,当然转换时我们可以直接利用当前时间或指定的字符串格式的时间格式。

获取当前时间转换

我们可以利用内置模块datetime获取当前时间,然后将其转换为对应的时间戳。

import datetime
import time
# 获取当前时间
dtime = datetime.datetime.now()
un_time = time.mktime(dtime.timetuple())
print(un_time)
# 将unix时间戳转换为“当前时间”格式
times = datetime.datetime.fromtimestamp(un_time)
print(times)
复制代码

转换结果:

1559568302.0
2019-06-03 21:25:02
复制代码

字符串时间的转换

当然我们也可以直接将字符串类型的时间对应的时间戳。

import datetime
import time

# 字符类型的时间
tss1 = '2019-06-03 21:19:03'
# 转为时间数组
timeArray = time.strptime(tss1, "%Y-%m-%d %H:%M:%S")
print(timeArray)
# timeArray可以调用tm_year等
print(timeArray.tm_year)  # 2019
# 转为时间戳
timeStamp = int(time.mktime(timeArray))
print(timeStamp)  # 1559567943
复制代码

示例结果:

time.struct_time(tm_year=2019, tm_mon=6, tm_mday=3, tm_hour=21, tm_min=19, tm_sec=3, tm_wday=0, tm_yday=154, tm_isdst=-1)
2019
1559567943
复制代码

时间戳转日期的其他方法

localtime

我们可以利用localtime()转换为时间数组,然后格式化为需要的格式

import time
timeStamp = 1559567943
timeArray = time.localtime(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)
复制代码

示例结果:

2019-06-03 21:19:03
复制代码

utcfromtimestamp

import time
import datetime
timeStamp = 1559567943
dateArray = datetime.datetime.utcfromtimestamp(timeStamp)
otherStyleTime = time.strftime("%Y-%m-%d %H:%M:%S", timeArray)
print(otherStyleTime)
复制代码
关注下面的标签,发现更多相似文章
评论