1. strftime()(格式化日期时间的函数)

%a 输出当前是星期几的英文简写
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%a')
'Sun'

%A 输出完整的星期几名称英文
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%A')
'Sunday'

%b  输出月份的英文简写
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%b')
'Sep'

%B 输出月份的英文完整名称
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%B')
'September'

%c 以本地时间显示日期和时间
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%c')
'09/15/13 21:43:29'

%d 显示1-31之间的数,每月的第几天,也就是年月日中的日
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%d')
'15'

%H  以24小时制显示小时,比如,02,14
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%H')
'21'

%I 以12小时制的方式显示当前小时,例如当前jb51.net服务器的时间为晚上21点,使用%I显示09
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%I')
'09'

%j 显示当前日期为一年中的第几天,如当前jb51.net服务器时间为2013915日,则显示为258,也就是一年中的第258>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%j')
'258'

%m 显示1-12之间的月份
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%m')
'09'

%M 显示00-59之间的分钟数
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%M')
'43'

%p 以 A.M./P.M.方式显示是上午还是下午
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%p')
'PM'

%S 显示0-59之间的秒数
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%S')
'29'

%U 显示一年中的第几周,星期天为一周的第一天,例如当前www.jb51.net服务器时间为2013915日,星期天,显示为第37>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%U')
'37'

%w  显示一周中的第几天,其中星期天为0,星期一为1,例如:jb51.net当前日期为2013917日星期二,则显示结果为2
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%w')
'2'

%W 显示一年中的第几周,和U%把不同的是星期一为一周的第一天,例如当前www.jb51.net服务器时间为2013917日,星期二,显示为第37周,范围在0-51之间
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%W')
'37'

%x 显示当地的日期,例如jb51.net本地时间为:北京时间2013917>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%x')
'09/17/13'

%X 显示当地的时间,例如jb51.net本地时间为:北京时间201391707:55:04  
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%X')
'07:55:04'

%y 显示(00 - 99) 之间的年份,例如:jb51.net服务器时间为:2013917日,则显示结果为13
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%y')
'13'

%Y 显示完整年份,例如:jb51.net服务器时间为:2013917日,则显示结果为2013
>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%Y')
'2013'

%z, %Z 输出时区,如果不能显示,则显示为空字符 %%  用于显示%符号
>>> now.strftime('%%')
'%'

一个完整的例子: 
显示当前日期时间:格式为:年--日 时::>>> datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S');
'2013-09-17 08:06:17'

2. strptime()(由字符串转为日期型的函数)

import datetime
day20 = datetime.datetime.strptime('2020-01-01 0:0:0', '%Y-%m-%d %H:%M:%S')
nowdate = datetime.datetime.today()
dela = day20 - nowdate
day = dela.days
hour = int(dela.seconds / 60 / 60)
minute = int((dela.seconds - hour * 60 * 60) / 60)
second = dela.seconds - hour * 60 * 60 - minute * 60
print('到2020年元旦还有:' + str(day) + '天' + str(hour) + '小时' + str(minute) + '分' + str(second) + '秒')

3. python中时间日期格式化符号

%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐