Python时间模块有两个,time模块和datetime模块。
前言:
Python中时间表示方法有三个:
1.时间戳:即从格林威治时间1975年1月1日00:00:00到现在的秒数;
2.格式化时间字符串:
以下是时间戳转化为特定格式的时间:
3.时间元组struct_time类型:
struct_time元组中包括以下元素:
tm_year(年)、tm_mon(月)、tm_mday(日)、tm_hour(时)、tm_min(分)、tm_sec(秒)、tm_wday(周,weekday0-6,0代表周日,6代表周六)。tm_yday(一年中的第几天1-366)、tm_isdst(是否是夏令时)。
time的strptime和localtime都返回该类型。如time.localtime():当前系统时间的struct_time表示
一、time模块
需要import time
(1)获得当前时间戳
time.time()
(2)时间戳转换成struct_time
time.gmtime()或者time.gmtime(time.time()-24*60*60)
time.localtime()或者time.localtime(time.time()-24*60*60)
(3)struct_time转换成时间戳
time.mktime(struct_time类型参数)
(4)struct_time转化成字符串格式
time.strftime(format,struct_time类型参数):format是 格式字符串
(5)时间格式字符串转化成struct_time
time.strptime(date_stirng,format)
(6)延迟执行
time.sleep(sec) sec:秒,表示进程挂起时间
二、datetime模块
datetime是time的升级版,相比time更直观,更容易调用。datetime模块包括如下类:
date:日期对象,常用属性year,month,day
time:时间对象
datetime:日期时间对象
timedelta:时间间隔
datetime_CAPI:日期时间对象C语言接口
tzinfo:时区信息对象
需要 import datetime引入模块内所有内容, 或者 from datetime import datetime 只引入datetime类
使用from datetime import datetime
(1)获得当前系统时间
datetime.now()
(2)获得时间戳
datetime类型变量调用timestamp()
(3)时间戳转换成datetime
datetime.fromtimestamp(时间戳)
(4)datetime类型转换成字符串
datetime类型变量dt调用,dt.strftime(format),fromat:格式化字符串
(5)时间格式字符串转换成datetime
datetime.strptime(date_string,format)
(6)datetime加减
# datetime加减 dt1 = datetime.now() tomorrow = dt1 + timedelta(days=1) yesterday = dt1+timedelta(days=-1) print('明天:', tomorrow) print('昨天:', yesterday) temp = tomorrow - yesterday print('明天-昨天:', temp) last_hour = dt1 + timedelta(hours=-1) print('一个小时前:', last_hour)
三、time和datetime之间的转换
time和datetime的转换通过中介时间戳