Python的time和datetime的简单使用
1、Time模块
time模块是python中处理时间的标准库。
- 计算机时间的表达
- 提供获取系统时间并格式化输出功能
- 提供系统级精确计时功能,用于程序性能分析
time模块以下时间表示方法。
- 第1种是:时间戳的方式。是基于1970年1月1日0时0分0秒的偏移。浮点数。
- 第2种是:struct_time()类型的表示方法。gmtime()和localtime()可以将时间戳显示为struct_time()类型。
- 第3种是:格式化时间。其中strftime()函数可以把struct_time()时间格式化显示。
time模块的三类函数。
1、时间获取:time()ctime()gmtime()
- time.time() 获取当前时间,浮点数
- time.ctime()获取当前时间并以易读方式表示,返回字符串
- time.gmtime()表示为计算机可处理的格式
2、时间格式化:steftime() strptime()
- time.strftime(format[,t]): 根据参数转换一个sturc_time或元组为字符串.
- time.strptime(string[, format]): 与strftime相反,返回一个struct_time.
3、程序计时:sleep()perf_counter()
- time.perf_counter() 返回一个cpu级别的精准时间计数值,单位为秒 计数值不缺定,连续调用差值有意义
- time.sleep(s) s是休眠的时间 单位可以是秒可以是浮点数
2、DateTime模块
datetime是python当中比较常用的时间模块,主要是输出格式化和操作提供高效的属性提取功能。
datetime.date | 表示日期,常用的属性有:year, month和day |
datetime.time | 表示时间,常用属性有:hour, minute, second, microsecond |
datetime.datetime | 表示日期时间 |
datetime.timedelta | 表示两个date、time、datetime实例之间的时间间隔,分辨率(最小单位)可达到微秒 |
datetime.tzinfo | 时区相关信息对象的抽象基类。它们由datetime和time类使用,以提供自定义时间的而调整。 |
datetime.timezone | 实现tzinfo抽象基类的类,表示与UTC的固定偏移量 |
俩个实用类
1、datetime.datetime:
- datetime.datetime.now():返回系统当前时间(2020-07-16 18:39:55.921602)
- datetime.datetime.now().date():返回当前时间的日期(2020-07-16)
- datetime.datetime.now().time():返回当前时间的时分秒(18:40:24.946237)
- datetime.datetime.ctime():将datetime.datetime类型转化成str类型
时间格式转化成字符串:
datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S'):返回时间的字符串(2020-07-16 14:42:36)
字符串转化成时间格式
datetime.datetime.strptime('2018-11-09 14:42:36','%Y-%m-%d %H:%M:%S'):返回datetime.datetime类型的时间(2020-07-016 14:42:36)
2、datetime.timedelta
timedelta对象表示连个不同时间之间的差值。如果使用time模块对时间进行算术运行,只能将字符串格式的时间 和 struct_time格式的时间对象 先转换为时间戳格式,然后对该时间戳加上或减去n秒,最后再转换回struct_time格式或字符串格式,这显然很不方便。而datetime模块提供的timedelta类可以让我们很方面的对datetime.date, datetime.time和datetime.datetime对象做算术运算,且两个时间之间的差值单位也更加容易控制。
datetime.timedelta()添加参数,如计算300天是几号。
datetime.timedelta()也可以多个参数,如计算300天12小时前的时间。
计算天数和秒数。