标准库 datetime
datetime类
类方法
today() 返回本地市区当前时间的datetime对象
now(tz-None) 返回当前时间的datetime对象,时间到微妙,如果tz为None,返回和today()一样
utcnow() 没时区的当前时间
fromtimestamp(timestamp,tz=None) 从一个时间戳返回一个datetime对象
import datetime
dt1 = datetime.datetime.now()
dt2 = datetime.datetime.today()
dt3 = datetime.datetime.utcnow()
dt4 = datetime.datetime.fromtimestamp(1554798579)
print(dt1)
print(dt2)
print(dt3)
print(dt4)
输出结果
2019-04-13 09:31:43.133163
2019-04-13 09:31:43.133163
2019-04-13 01:31:43.133163
2019-04-09 16:29:39
datetime对象
timestamp()
返回一个到微妙的时间戳
时间戳:格林威治时间1970年1月1日0点到现在的秒数
- 构造方法 datetime.datetime(2016,12,6,16,29,43,79043)
- year、month、day、hour、minute、second、microsecond、取datetime对象的年月日时分秒及微秒
weekdat() 返回星期的天,周一0,周日6
isoweekday() 返回星期的天,周一1,周日7
date() 返回日期date对象
time() 返回时间time对象
replace() 修改并返回新的时间
isocalendar() 返回一个三元组(年,周数,周的天)
日期格式化
- 类方法 strptime(date_string,format),返回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))
print('{:%Y-%m-%d %H:%M:%S}'.format(dt))
输出结果
2006-11-21 16:30:00
2006/11/21 16::30::00
2006-11-21 16:30:00
- timedelta对象
datetime2 = datetime1 + timedelta2
datetime2 = datetime1 - timedelta
timedelta = datetime1 -datetime2 - 构造方法
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0 )
year = datetime.timedelta(days=365)
total_seconds() 返回时间差的总秒数
import datetime
dt1 = datetime.datetime.now()#生成当前时间的datetime对象
print(dt1)
dt2 = dt1 + datetime.timedelta(days=365, hours=12)#给当前时间对象增加一年12小时
print(dt2)
print((dt2 - dt1).total_seconds())计算两个时间差的总秒数
输出结果
2019-04-13 09:40:02.176706
2020-04-12 21:40:02.176706
31579200.0
标准库time
time
- time.sleep(secs) 将调用线程挂起指定的秒数