Python的datetime模块使用
Posted jeemzz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python的datetime模块使用相关的知识,希望对你有一定的参考价值。
两个常量
MAXYEAR:9999 MINYEAR:1
五个类
datetime.datetime:日期时间类 datetime.date:日期类 datetime.time:时间类 datetime.timedelta:时间间隔,即两个时间点之间的长度 datetime.tzinfo:时区相关信息
参数
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(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([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(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
类和
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) |
%H |
24 小时制小时数(00-23) |
%I |
12 小时制小时数(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 |
当前时区名称 |
%% |
% 号本身 |
以上是关于Python的datetime模块使用的主要内容,如果未能解决你的问题,请参考以下文章