Python时间函数详解,时间日期如何处理?
Python提供了丰富的时间函数,用于处理时间日期的各种操作和格式化,下面就来详细介绍一下Python的时间函数。
1. 时间戳
时间戳是一个浮点数,表示从1970年1月1日00:00:00开始经过的秒数,可以使用time模块的time()函数获取当前的时间戳,例如:
import time timestamp = time.time() print(timestamp)
输出结果为:1626988841.3096018
2. 结构化时间
结构化时间是一个包含九个元素的元组,元素分别为:年、月、日、时、分、秒、一周的第几日、一年的第几日、夏令时。可以使用time模块的localtime()函数获取当前的结构化时间,例如:
import time struct_time = time.localtime() print(struct_time)
输出结果为:time.struct_time(tm_year=2021, tm_mon=7, tm_mday=22, tm_hour=10, tm_min=14, tm_sec=23, tm_wday=3, tm_yday=203, tm_isdst=0)
3. 格式化时间
格式化时间是指将结构化时间转化为指定格式的时间字符串,可以使用time模块的strftime()函数实现。strftime()函数的 个参数为格式化字符串,通过该字符串可以定义输出的时间格式,例如:
import time
struct_time = time.localtime()
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", struct_time)
print(formatted_time)
输出结果为:2021-07-22 10:19:37
除了time模块外,Python还提供了datetime模块,该模块也提供了丰富的时间函数。datetime模块中最常用的两个类是datetime和timedelta。
4. datetime类
datetime类表示一个日期和时间的组合,该类的构造函数如下:
datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])
其中,year表示年份(四位数),month表示月份,day表示日期,hour表示小时(24小时制),minute表示分钟,second表示秒,microsecond表示微秒,tzinfo表示时区信息(可以不指定)。
例如,可以使用datetime模块构造当前时间的datetime对象,实现代码如下:
import datetime now = datetime.datetime.now() print(now)
输出结果为:2021-07-22 10:30:38.835194
也可以指定一个日期和时间来构造datetime对象,例如:
import datetime dt = datetime.datetime(2021, 7, 22, 10, 30, 38) print(dt)
输出结果为:2021-07-22 10:30:38
5. timedelta类
timedelta类表示两个日期或时间之间的差值,该类的构造函数如下:
timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
其中,days表示天数,seconds表示秒数,microseconds表示微秒数,milliseconds表示毫秒数,minutes表示分钟数,hours表示小时数,weeks表示周数(可以不指定)。
例如,可以使用timedelta计算两个日期之间的差值,实现代码如下:
import datetime d1 = datetime.date(2021, 7, 20) d2 = datetime.date(2021, 7, 22) delta = d2 - d1 print(delta.days)
输出结果为:2
综上所述,Python提供了丰富的时间函数,可以实现各种时间日期相关的操作和格式化。同时,Python还提供了datetime和timedelta类,方便地处理日期和时间的差值和组合。
