chapter3.6、标准库datetime

标准库datetime

datetime模块

  import datetime  导入datetime 模块

  对时间,日期,时间戳处理

模块下的类datetime

  datetime.datetime.today()   返回包含本地时区时间信息的对象

  datetime.datetime.now(tz=None)  返回当前时间的datetime对象,时间到微秒,如果tz为None,返回的和today相同

  utcnow()  没有时区的当前时间, 国际标准时间

  fromtimestamp(timestamp,tz=None)  从一个时间戳返回一个datetime对象

    datetime.datetime.fromtimestamp(1534450728.552351)

datetime对象  

  timestamp()  返回到微秒的时间戳

  时间戳 :timestamp,格林威治时间1970年1月1日0点到现在的秒数,python中精确到后几位

  时间戳可以来统一不同的时间

  构造方法:datetime.datetime(2016, 12, 7, 23, 13, 54)

时间戳与时区无关,在同一时间取到的时间戳,在美国与中国时间戳相同。国际业务使用国际时间。

  fromtimestamp

  weekday()  返回周几,周一0 

  iosweekday() 返回星期的天,周一1,周日7

  date()  返回日期date对象

  time()  返回时间对象time

  replace()  修改并返回新的时间

  isocalendar  返回一个三元组(年,周数,周的天)

标准库datetime

日期格式化*

类方法 strptime (date_string,format)  -->datetime  返回datetime对象,解析过去时间

对象方法 strftime(format)     返回字符串

字符串format函数格式化

import datetime
dt = datetime.datetime.strptime("21/11/06 16:30","%d/%m/%y %H:%M")
#解析,使用字符串转成时间,格式要求完全匹配
print(dt.strftime('%Y-%m-%d %H:%M:%S'))
print('{0:%Y}/{0:%m}/{0:%d} {0:%H}::{0:%M}::{0:%S}'.format(dt))

返回

2006-11-21 16:30:00
2006/11/21 16::30::00

strftime 年的 %Y4位,%y2位

timedelta对象

timedelta = datetime1 - datetime2

datetime2 = datetime1 - timedelta

datetime2 = datetime1 + timedelta

构造方法

datetime.timedelta(days=0,seconds=0,microseconds=0,minutes=0,hours=0,weeks=0)  

  默认顺序,按照使用频率排序,要写控制参数就都要写,要不就(0,2,0,0,2),构造新的timedelta

timedelta.total_second() 返回时间差总秒数 eg: delta.timedelta.total_second()

时间增量天秒最常用

标准库time

time.sleep(secs)将调用线程挂起指定的秒数,多线程时在控制台输入命令是会暂时存至键盘缓存区,但不会响应执行指令

原文地址:https://www.cnblogs.com/rprp789/p/9490677.html