python datetime 和时间戳互相转换问题
作者:A_Prophet 发布时间:2023-12-31 05:32:26
python datetime 和时间戳互转
import datetime, time
now = datetime.datetime.now()
now_time = int(time.mktime(now.timetuple())) #datetime 转时间戳
now = datetime.datetime.fromtimestamp(now_time) #时间戳转datetime
# datetime 当天8点
datetime(now.year, now.month, now.day, 8)
now = 0点-8点 int(now-now % 86400) + time.timezone是前一天的零点
Python time和datetime时间戳和时间字符串相互转换
Python time和datetime时间戳和时间字符串相互转换
时间戳是指格林威治时间1970年01月01日00时00分00秒开始计算所经过的秒数,是一个浮点数。
time和datetime都是Python中的内置模块(不需要安装,直接可以使用),都可以对时间进行获取,对时间格式进行转换,如时间戳和时间字符串的相互转换。
现在我们就使用这两个模块来对时间格式进行转换。
一、time获取当前时间
import time
print(time.time())
print(time.localtime())
print(time.localtime(time.time()))
运行结果:
1559120608.5015295
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=29, tm_hour=17, tm_min=3, tm_sec=28, tm_wday=2, tm_yday=149, tm_isdst=0)
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=29, tm_hour=17, tm_min=3, tm_sec=28, tm_wday=2, tm_yday=149, tm_isdst=0)
可以通过time.time()获取到当前的时间,默认是一个时间戳浮点数。
通过time.localtime()或time.localtime(time.time())都是获取到当前时间的struct_time,里面分别对应了当前时间的年、月、日、时、分、秒、一周的第几天(周一是0,0-6)、一年的第几天(从1开始,1-366)、夏时令(是夏时令1,不是0,不知道-1)。
二、time将时间戳转换成时间字符串
# 时间戳转换成时间字符串
time_str = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time()))
print(time_str)
运行结果:
2019-05-29 17:08:35
三、time将时间字符串转换成时间戳
print(time.strptime(time_str, '%Y-%m-%d %H:%M:%S'))
# 时间字符串转换成时间戳
time_stamp = time.mktime(time.strptime(time_str, '%Y-%m-%d %H:%M:%S'))
print(time_stamp)
运行结果:
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=29, tm_hour=17, tm_min=8, tm_sec=35, tm_wday=2, tm_yday=149, tm_isdst=-1)
1559120915.0
可以看到,不管是将时间戳转换成时间字符串,还是将时间字符串转换成时间戳,time模块都是通过struct_time来过渡的,也就是说,都需要先转换成struct_time,再用struct_time转换成想要的结果。
四、datetime获取当前时间
from datetime import datetime
print(datetime.now())
print(datetime.now().timetuple())
运行结果:
2019-05-29 17:22:37.343784
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=29, tm_hour=17, tm_min=22, tm_sec=37, tm_wday=2, tm_yday=149, tm_isdst=-1)
可以通过datetime.now()获取到当前的时间,默认是一个datetime时间对象,样式是一个时间字符串的样式。
注意:导包时导入的是datetime包下的datetime模块。导包方式不同,使用时也不同。
通过datetime对象的timetuple()方法可以获取到时间的struct_time。
五、datetime将datetime对象转换成时间字符串和时间戳
# datetime对象转换成时间字符串
datetime_str = datetime.strftime(datetime.now(), '%Y-%m-%d %H:%M:%S')
print(datetime_str)
# datetime对象转换成时间戳
datetime_stamp = datetime.timestamp(datetime.now())
print(datetime_stamp)
运行结果:
2019-05-29 17:22:37
1559121757.343784
六、datetime将时间字符串转换成时间戳
# 时间字符串转datetime对象,再转时间戳
datetime_stamp2 = datetime.timestamp(datetime.strptime(datetime_str, '%Y-%m-%d %H:%M:%S'))
print(datetime_stamp2)
运行结果:
1559121757.0
七、datetime将时间戳转换成时间字符串
# 时间戳转datetime对象,再转时间字符串
datetime_str2 = datetime.strftime(datetime.fromtimestamp(datetime_stamp2), '%Y-%m-%d %H:%M:%S')
print(datetime_str2)
运行结果:
2019-05-29 17:22:37
在使用datetime进行时间戳和时间字符串之间的转换时,都是先转换成datetime对象,然后再做进一步的转转。
在实际工作中,我们也可以同时使用time和datetime两个模块,它们是可以混合使用的。
来源:https://blog.csdn.net/A_Prophet/article/details/83011928
猜你喜欢
- 本文实例讲述了Python使用回溯法解决迷宫问题。分享给大家供大家参考,具体如下:问题给定一个迷宫,入口已知。问是否有路径从入口到出口,若有
- 九宫格是一种比较古老的设计,它最基本的表现其实就像是一个三行三列的表格。其实它最初是在window的c/s结构中用得比较多,比如我们经常看到
- 继承是面向对象编程的一个重要的方式,通过继承,子类就可以扩展父类的功能。在python中一个类能继承自不止一个父类,这叫做python的多重
- 超如果你急需一个简单的Web Server,但你又不想去下载并安装那些复杂的HTTP服务程序,比如:Apache,ISS等。那么, Pyth
- 在python中进行两个整数相除的时候,在默认情况下都是只能够得到整数的值解决方法:1. 修改被除数的值为带小数点的形式即可得到浮点值2.在
- 当我们提到一门编程语言的效率时:通常有两层意思,第一是开发效率,这是对程序员而言,完成编码所需要的时间;另一个是运行效率,这是对计算机而言,
- 相信玩过爬虫的朋友都知道selenium,一个自动化测试的神器工具。写个Python自动化脚本解放双手基本上是常规的操作了,爬虫爬不了的,就
- 前言Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式。
- 在数据库应用的设计中,我们往往会需要获取某些表的记录总数,用于判断表的记录总数是否过大,是否需要备份数据等。我们通常的做法是:select
- 首先我们有一个数据是一个mn的numpy矩阵现在我们希望能够进行给他加上一列变成一个m(n+1)的矩阵import numpy as npa
- 说实话,对于移除这个旧有功能对于我来说,我是欢心鼓舞的。因为我在开发和应用当中一向不用expression来处理,虽然它确实是非常方便,比如
- 快速测试创建项目与appdjango-admin startproject mysitedjango-admin startapp app1
- 前言简单的爬虫只有一个进程、一个线程,因此称为单线程爬虫。单线程爬虫每次只访问一个页面,不能充分利用计算机的网络带宽。一个页面最多也就几百K
- 有时我们有很多文件(如图片),我们需要对每一个文件进行操作。 我们还需要一份文件的名字来进行遍历,这时我们首先需要建立一份文件名单,有时还会
- 在php中实现验证码还是很方便的,关键点在于掌握php gd库与session的用法。纵观网上php 生成验证码的例子,无不是php gd库
- 在学习和使用各种数据库的过程中,我们常常会遇到聚族索引、非聚族索引、组合索引的概念,这些索引对我们使用数据库,特别是查询的速度的
- 我就废话不多说了,大家还是直接看代码吧!### 以下链接里面的codeimport numpy as npfrom keras.callba
- 刚接触 Go 语言时,就听说有一个叫rune的数据类型,即使查阅过一些资料,对它的理解依旧比较模糊,加之对陌生事物的天然排斥,在之后很长一段
- 二维码作为一种信息传递的工具,在当今社会发挥了重要作用。从手机用户登录到手机支付,生活的各个角落都能看到二维码的存在。那你知道二维码是怎么解
- 本文实例为大家分享了python实现定时发送邮件到指定邮箱的具体代码,供大家参考,具体内容如下整个链路:传感器采集端采集数据,边缘端上传数据