Python 3 – time mktime() 方法

Python 3 – time mktime() 方法

在Python中,时间是一个经常被使用的数据类型,因为我们需要在程序运行期间经常处理日期、时间、时间间隔等此类数据。time模块是Python自带的处理日期和时间数据的类库,其中有一个非常常用的函数就是mktime()函数,它主要用于将struct_time类型的时间转换为Unix时间戳(即从1970年1月1日开始到该时间的秒数)。

mktime() 的语法

mktime()函数的语法如下所示:

import time
time.mktime( 时间元组 )

在这里,时间元组指的是struct_time类型的时间。

mktime() 的返回值

mktime()函数的返回值是一个浮点数。它代表了时间元组所指的时间距离1970年1月1日0时0分0秒之间的秒数。如果输入的时间元组不合法,则会返回-1.

下面让我们来看一个实例:

import time

# 获取当前时间
localtime = time.localtime(time.time())
print ("本地时间为 :", localtime)

#将时间元组转换为时间戳
mktime_local = time.mktime(localtime)
print ("本地时间转换为秒后的时间戳为 :", mktime_local)

输出结果:

本地时间为 : time.struct_time(tm_year=2021, tm_mon=3, tm_mday=22, tm_hour=17, tm_min=43, tm_sec=49, tm_wday=0, tm_yday=81, tm_isdst=0)
本地时间转换为秒后的时间戳为 : 1616430229.0

在这个例子中,我们使用time模块获得了当前时间的struct_time型数据,并使用mktime()函数将它转换为Unix时间戳,最后输出了时间戳。

Unix时间戳与struct_time之间的转换

除了将struct_time类型数据转换为Unix时间戳,我们还可以将时间戳转换为struct_time类型数据。

import time

#获取当前时间的时间戳
mk_timestamp = time.time()
print("当前时间戳为:",mk_timestamp)

# 将时间戳转换为时间元组
localtime = time.localtime(mk_timestamp)
print ("本地时间为 :", localtime)

输出结果:

当前时间戳为: 1616430229.415276
本地时间为 : time.struct_time(tm_year=2021, tm_mon=3, tm_mday=22, tm_hour=17, tm_min=43, tm_sec=49, tm_wday=0, tm_yday=81, tm_isdst=0)

在这个例子中,我们使用time模块获得了当前时间的Unix时间戳,并使用localtime()函数将它转换为struct_time型数据,最后输出了该数据。

结论

mktime()函数可以将Python中的struct_time型数据转换为Unix时间戳。在Python程序中,我们可以通过这个函数方便地进行时间类型的转换操作。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程