python根据时间戳获取时分秒

Python014

python根据时间戳获取时分秒,第1张

时间戳可简单理解为自1970/01/01/ 00:00:00 到现在经过的秒数,如果要计算日期运算,因为涉及到润年,一般使用语言自带的库实现比较简单和高效。但如果只是取时间即时分秒,完全可以不用依赖库,通过模运算和取整运算的方式实现,并且性能比内部库函数效率更高。

运行结果,100万次

1000万次

性能快了接近200%,如果有涉及到大数据分析场景,百万甚至千万级别次的调用时,该算法还是有意义的

就是先获取当前的时间戳,然后按格式输出时间。

使用方式如下:1、打开终端,2、输入:python,3、输入:importtime,4、输入:time.localtime([可以放入时间戳]),5、发现输出了一个struct_time结构,6、输入:time.localtime().tm_hour,7、获得了当前的小时值。

提取时间的正则表达式主要介绍了Python使用re模块正则提取字符串中括号内的内容。

time模块是python专门用来处理时间的内建库。

下面我们来记录一些基本使用方法。

ps: 用到了一些概念,比如unix时间戳,感兴趣的同学自行百度。

下文参考他人博客内容, 传送门

time.time()函数获取的是Unix时间戳。

返回的是一个float类型的数值。

在python中的time模块中定义了一个叫struct_time的元组,是用来构建时间对象的。

struct_time元组共9个元素组成,如下图:

这个函数可以接受一个unix时间戳,然后转换为struct_time。

如果不传入second参数,则会返回当前时间的时间戳的struct_time对象

再试试传入当前时间的时间戳,是否能得到上面的struct_time呢?

和我们预期的结果一致。

和localtime函数类似,默认情况gmtime函数获取当前时间的utc时间。

返回当前时间的utc时间的struct_time对象。

也可以传入任意的unix时间戳,来得到utc时间。

将一个时间戳struct_time对象转换为时间戳。

传入一个struct_time对象,返回"Sun Jun 20 23:21:05 1993"这种格式的字符串。不传参数,返回当前时间的这种格式的字符串。

传入格式和struct_time,返回按照format格式格式化后的时间字符串。

格式占位符可以参考下图:

将字符串时间转为struct_time,time.strftime()的逆向操作。