欢迎访问宙启技术站
智能推送

Python函数中如何实现时间格式转换?

发布时间:2023-06-23 13:06:25

在Python中,时间日期在程序中经常使用,有时候需要将时间和日期从一种格式转换成另一种格式。Python提供了多种用于操作时间和日期的函数和模块,可以方便地进行日期转换。本文将介绍常用的时间格式转换方法,为Python开发人员提供帮助。

时间格式

在Python中,常用的时间格式包括时间戳、时间元组和时间字符串。

时间戳是从1970年1月1日00:00:00开始到现在的秒数。可以通过time模块中的time()函数获取当前时间的时间戳,例如:

import time
timestamp = time.time()
print(timestamp)  # 1629616075.270736

时间元组是包含了年、月、日、时、分、秒、周几等的元组,可以通过time模块中的localtime()函数获取当前时间的时间元组,例如:

import time
time_tuple = time.localtime()
print(time_tuple)  # time.struct_time(tm_year=2021, tm_mon=8, tm_mday=22, tm_hour=22, tm_min=14, tm_sec=35, tm_wday=6, tm_yday=234, tm_isdst=0)

时间字符串是以特定格式的字符串表示的时间。可以通过strftime()函数将时间元组或时间戳转换成时间字符串,例如:

import time
time_str = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
print(time_str)  # 2021-08-22 22:17:01

时间格式转换

在Python中,常用的时间格式转换包括时间戳转换为时间元组、时间元组转换为时间戳、时间元组转换为时间字符串、时间字符串转换为时间元组等。

1. 时间戳转换为时间元组

可以使用time模块中的localtime()函数将时间戳转换为时间元组,例如:

import time
timestamp = 1629616075.270736
time_tuple = time.localtime(timestamp)
print(time_tuple)  # time.struct_time(tm_year=2021, tm_mon=8, tm_mday=22, tm_hour=22, tm_min=14, tm_sec=35, tm_wday=6, tm_yday=234, tm_isdst=0)

2. 时间元组转换为时间戳

可以使用calendar模块中的timegm()函数将时间元组转换为时间戳,例如:

import calendar
time_tuple = (2021, 8, 22, 22, 14, 35, 6, 234, 0)
timestamp = calendar.timegm(time_tuple)
print(timestamp)  # 1629616475

3. 时间元组转换为时间字符串

可以使用time模块中的strftime()函数将时间元组转换为时间字符串,例如:

import time
time_tuple = (2021, 8, 22, 22, 14, 35, 6, 234, 0)
time_str = time.strftime("%Y-%m-%d %H:%M:%S", time_tuple)
print(time_str)  # 2021-08-22 22:14:35

4. 时间字符串转换为时间元组

可以使用time模块中的strptime()函数将时间字符串转换为时间元组,例如:

import time
time_str = "2021-08-22 22:14:35"
time_tuple = time.strptime(time_str, "%Y-%m-%d %H:%M:%S")
print(time_tuple)  # time.struct_time(tm_year=2021, tm_mon=8, tm_mday=22, tm_hour=22, tm_min=14, tm_sec=35, tm_wday=6, tm_yday=234, tm_isdst=-1)

注意,在将时间字符串转换为时间元组时,需要指定时间字符串的格式。

总结

本文介绍了Python中常用的时间格式(时间戳、时间元组和时间字符串)和时间格式转换方法,有助于Python开发人员更加方便地操作时间和日期。在实际开发中,我们可以根据需要选择不同的时间格式,使用相应的函数进行时间格式转换。