两个常量
MAXYEAR:9999
MINYEAR:1
五个类
datetime.datetime:日期时间类
datetime.date:日期类
datetime.time:时间类
datetime.timedelta:时间间隔,即两个时间点之间的长度
datetime.tzinfo:时区相关信息
datetime.datetime
参数
datetime.datetime(year, month, day[, hour[, minute[, second[, microsecond[,tzinfo]]]]])
常用实例方法
datetime.datetime.now()
# 2019-01-02 10:08:07.611755
# 返回当前系统时间
datetime.datetime.now().ctime() # Wed Jan 2 10:08:07 2019
# 返回一个表示日期的字符串,相当于 time 模块的 time.ctime(time.mktime(d.timetuple()))
datetime.datetime.now().date() # 2019-01-02
# 返回当前系统时间的日期部分
datetime.datetime.now().time() # 10:08:07.611885
# 返回当前系统时间的时间部分
datetime.datetime.fromtimestamp(1546393545.889359)
# 2019-01-02 09:45:45.889359
# 将时间戳转化为日期时间
datetime.datetime.now().replace(year=2020, hour=12)
# 2020-01-02 12:08:07.611960
# 对datetime类内参数进行修改,返回新的datetime类
datetime.datetime.now().strftime('%b-%d-%Y %H:%M:%S')
# Jan-02-2019 10:08:07
# 由日期时间格式转换为字符串格式
datetime.datetime.strptime('Apr-16-2017 21:01:35',
'%b-%d-%Y %H:%M:%S')
# 由字符串格式转换为日期时间格式,2017-04-16 21:01:35
datetime.date
参数
datetime.date(year, month, day)
常用实例方法
datetime.date(year=2020, month=11, day=1)
# 2020-11-01
# 根据参数创建date类
datetime.date.fromtimestamp(1546393545.889359)
# 2019-01-02
# 根据时间戳生成date类
datetime.date.today() # 2019-01-02
# 返回当前日期
datetime.date.today().ctime() # Wed Jan 2 00:00:00 2019
# 返回一个表示日期的字符串
datetime.date.isoformat(datetime.date.today()) # 2019-01-02
datetime.date.isoformat(datetime.datetime.now())
# 2019-01-02
# 返回格式YYYY-MM-DD
datetime.date.today().replace(year=1999)
# 1999-01-02
# 替换给定日期,原日期不变
datetime.date.today().strftime('%b-%d-%Y')
# Jan-02-2019
# 按照指定格式格式化date实例
datetime.date.strftime(datetime.date.today(), '%b-%d-%Y %H:%M:%S')
# 按照指定格式格式化给定日期,Jan-02-2019 00:00:00
datetime.time
参数
datetime.time([hour[, minute[, second[, microsecond[, tzinfo]]]]])
常用实例方法
t = datetime.time(hour=10, minute=12, second=11
)
t.replace(hour=2)
# 02:12:11
# 生成一个新的时间对象,用参数指定时间代替原有对象相应的属性
t.isoformat() # 10:12:11
# 返回一个ISO 8601格式的字符串
t.strftime('%H.%M.%S')
# 10.12.11
# 按照指定格式输出时间字符串
datetime.timedelta
参数
所有参数都是可选的,可以是整数或浮点数,正数或负数。
datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
常用实例方法
time_1 =
datetime.datetime.now()
time_2 =
datetime.datetime.now()
time_2 -
time_1
# 一个timedelta实例
(time_2 -
time_1).total_seconds()
# 两个时间之间总秒数
datetime类和date、time类之间的转化
d =
datetime.date.today()
t = datetime.time(hour=10, minute=11, second=12
)
dt =
datetime.datetime.combine(d, t)
# 将date类d,time类t连接,组成datetime类dt,date类必须放在前面
dd =
dt.date()
# 从datetime类中提取date类
tt =
dt.time()
# 从datetime类中提取time类
时间日期格式化符号
符号表示%y两位数年份表示(00-99)%Y四位数年份表示(0000-9999)%m月份(01-12)%d月内某一天(01-31)%H24小时制小时数(00-23)%I12小时制小时数(01-12)%M分钟数(00-59)%S秒数(00-59) %a本地简化星期名称(Wed)%A本地完整星期名称(Wednesday)%b本地简化月份名称(Jan)%B本地完整月份名称(January)%c本地相应的日期表示和时间表示(Tue Aug 16 21:30:00 2018)%j年内的一天(001-366)%p本地AM或PM的等价符%U一年中星期数,以星期天为起始(00-53)%w星期(0-6)%W一年中星期数,以星期一为起始(00-53)%x本地相应的日期表示%X本地相应的时间表示%Z当前时区名称%%%号本身
转载于:https://www.cnblogs.com/jeemzz/p/11423220.html
相关资源:详解python datetime模块