python中日期和时间格式化输出的方法小结

yipeiwu_com6年前Python基础

本文实例总结了python中日期和时间格式化输出的方法。分享给大家供大家参考。具体分析如下:

python格式化日期时间的函数为datetime.datetime.strftime();由字符串转为日期型的函数为:datetime.datetime.strptime(),两个函数都涉及日期时间的格式化字符串,这里提供详细的代码详细演示了每一个参数的使用方法及范例。

下面是格式化日期和时间时可用的替换符号 %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服务器时间为2013年9月15日,则显示为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服务器时间为2013年9月15日,星期天,显示为第37周

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%U')
'37'

%w  显示一周中的第几天,其中星期天为0,星期一为1,例如:jb51.net当前日期为2013年9月17日星期二,则显示结果为2

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%w')
'2'

%W 显示一年中的第几周,和U%把不同的是星期一为一周的第一天,例如当前www.jb51.net服务器时间为2013年9月17日,星期二,显示为第37周,范围在0-51之间

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%W')
'37'

%x 显示当地的日期,例如jb51.net本地时间为:北京时间2013年9月17日

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%x')
'09/17/13'

%X 显示当地的时间,例如jb51.net本地时间为:北京时间2013年9月17日 07:55:04 

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%X')
'07:55:04'

%y 显示(00 - 99) 之间的年份,例如:jb51.net服务器时间为:2013年9月17日,则显示结果为13

>>> import datetime
>>> now=datetime.datetime.now()
>>> now.strftime('%y')
'13'

%Y 显示完整年份,例如:jb51.net服务器时间为:2013年9月17日,则显示结果为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'

希望本文所述对大家的Python程序设计有所帮助。

相关文章

使用70行Python代码实现一个递归下降解析器的教程

 第一步:标记化 处理表达式的第一步就是将其转化为包含一个个独立符号的列表。这一步很简单,且不是本文的重点,因此在此处我省略了很多。 首先,我定义了一些标记(数字不在此中,它们...

Python中关于浮点数的冷知识

本周的PyCoder's Weekly 上分享了一篇小文章,它里面提到的冷知识很有意思,我稍作补充,分享给大家。 它提到的部分问题,读者们可以先思考下: 若两个元组相等,即 a==...

python DataFrame 修改列的顺序实例

假设我有一个DataFrame(df)如下: name age id mike 10 1 tony 14 2 lee 20 3 现在我想把id 放到最前面,变成: id nam...

Python利用heapq实现一个优先级队列的方法

Python利用heapq实现一个优先级队列的方法

实现一个优先级队列,每次pop的元素要是优先级高的元素,由于heapq.heapify(list)默认构建一个小顶堆,因此要将priority变为相反数再push,代码如下: imp...

Odoo中如何生成唯一不重复的序列号详解

前言 最近在做的项目中有一个需求是要让某个字段值根据记录产生的日期和一定的组合规则按顺序生成一个序列号,这个序列号不可重复,这原本是一个很常见的需求,没有多想就写好了。由于没有考虑到并发...