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

时间:2022-11-09 10:41:47

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

获取当前时间转换

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

?
1
2
3
4
5
6
7
8
9
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

字符串时间的转换

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

?
1
2
3
4
5
6
7
8
9
10
11
12
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()转换为时间数组,然后格式化为需要的格式

?
1
2
3
4
5
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

?
1
2
3
4
5
6
import time
import datetime
timestamp = 1559567943
datearray = datetime.datetime.utcfromtimestamp(timestamp)
otherstyletime = time.strftime("%y-%m-%d %h:%m:%s", timearray)
print(otherstyletime)

总结

以上所述是小编给大家介绍的python3日期与时间戳转换的几种方法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!

如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://juejin.im/post/5cf522eb6fb9a07ec56e6392