Python时间处理函数:datetime和time模块的常用函数介绍
Python 时间处理功能很强大,能够轻松处理日期、时间和时间间隔,方便了 Python 语言的开发者进行时间相关的操作。其中主要常用的两个时间处理模块是 datetime 和 time。
datetime 模块是 Python 标准库中最常用的时间处理模块之一,它可以方便的处理日期和时间的转换,具体主要函数如下:
1. datetime.datetime.now()
获取当前时间,精度可以到微秒。
2. datetime.datetime.strptime(date_string, format)
将一个字符串格式的时间转换成 datetime 对象。
3. datetime.datetime.strftime(format)
将 datetime 对象格式化成字符串。
4. datetime.datetime.date()
获取日期部分。
5. datetime.datetime.time()
获取时间部分。
6. datetime.datetime.timetuple()
将 datetime 对象转为 time.struct_time 对象。该对象可以通过 time.strftime() 方法格式化成字符串。
7. datetime.datetime.timestamp()
获取 Unix 时间(时间戳)。
8. datetime.datetime.fromtimestamp(timestamp)
将 Unix 时间转为 datetime 对象。
9. datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
表示时间间隔。
10. datetime.datetime.timedelta.total_seconds()
将时间间隔转换成秒。
下面我们看下 datetime 中时间的格式化:
Python的时间格式化有好几种,这里只列出了一部分,详细的格式化可以看 Python 官网 strftime() 函数文档。
%Y:年份,比如2015,2017等等;
%m:月份,比如01,10,12等等;
%d:日份,比如01,05,18等等;
%H:小时,24小时,比如00,01,16等等;
%I:小时,12小时,比如01,02,03等等;
%M:分钟,比如00,01,59等等;
%S:秒数,比如00,01,59等等;
%a:星期缩写,比如Sun,Mon,Tue等等;
%A:星期全称,比如Sunday,Monday,Tuesday等等;
%b:月份缩写,比如Jan,Feb,Dec等等;
%B:月份全称,比如January,February,December等等;
%j:一年中的天数,即儒略日,比如1,10,150等等;
%U:一年中的周数,从周日作为每周 天开始计算,比如0,1,20等等;
%W:一年中的周数,从周一作为每周 天开始计算,比如0,1,20等等;
%c:时间日期完整显示;
%x:日期完整显示,比如08/09/18;
%X:时间完整显示,比如11:01:08;
%Z:时区显示,比如PST,GMT等等。
接下来我们来看下 time 模块:
time 模块是 Python 标准库中的另一个时间处理模块,它主要用于时间的秒数转换,常用函数如下:
1. time.time()
获取当前时间,单位是秒。
2. time.strftime(format[, t])
将时间戳转换为格式化的时间字符串。
3. time.strptime(string[, format])
将格式化的字符串转换为时间元组(元组中包含时间的年、月、日、时、分、秒等信息)。
4. time.mktime(t)
将时间元组转换成秒。
5. time.sleep(s)
睡眠 s 秒,s 可以是浮点数。
总结:
Python时间处理函数为datetime和time模块,二者都具有丰富的 API 可以使用。datetime.datetime.now() 获取当前时间,datetime.datetime.strptime(date_string, format)将一个字符串格式的时间转换成datetime 对象,datetime.datetime.strftime(format)将datetime对象转为字符串。在结果显示时,常用的格式符号有 %Y、%m、%d 和 %H、%M、%S 等。time 模块用于秒数转换,最常用的就是获取当前秒数的 time.time() 函数,然后再进行相应的格式化输出,进行时间相关的计算等等。
