您的位置:首页 > 编程语言 > Python开发

Python学习进程(11)日期和时间

2016-07-23 11:14 393 查看
[b] 本节介绍Python应用程序处理时间和日期的方式。其中转换日期格式是最常用的功能。[/b]

[b] (1)获取时间戳:[/b]

Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。

函数time.time()用于获取当前时间戳:

>>> import time
>>> tickets=time.time()
>>> print "当前时间戳是:",tickets
当前时间戳是: 1469240559.05


注意:

1.时间间隔是以秒为单位的浮点小数。

2.每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。

3.时间戳只能显示从1970年到2038年。

[b] (2)时间元组与获取当前时间:[/b]

很多Python函数用一个元组装起来的9组数字处理时间:





这个元祖是struct_time元组:



获取当前时间并转换为时间元组:

>>> import time
>>> tickets=time.time()
>>> print "当前时间戳为",tickets
当前时间戳为 1469241472.95
>>> localtime=time.localtime(tickets)
>>> print "本地时间",localtime
本地时间 time.struct_time(tm_year=2016, tm_mon=7, tm_mday=23, tm_hour=10, tm_min=37, tm_sec=52, tm_wday=5, tm_yday=205, tm_isdst=0)


[b] (3)格式化时间:[/b]

1)直接获取格式化的时间:

>>> formtime=time.asctime(time.localtime(time.time()))
>>> print "本地时间是:",formtime
本地时间是: Sat Jul 23 10:48:42 2016


2)任意获取格式化的时间:

>>> import time
>>> localtime=time.localtime(time.time())
#1.格式化为年月日 时分秒的形式
>>> print time.strftime("%Y-%m-%d %H-%M-%S",localtime)
2016-07-23 10-52-31
#2.格式化为星期 月 日 时分秒的形式
>>> print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())
Sat Jul 23 10:55:59 2016
>>> print time.strftime("%a %b %d %H:%M:%S %Y",localtime)
Sat Jul 23 10:52:31 2016
#3.将已经格式化的时间元组重新变为时间戳
>>> print time.mktime(time.strptime(time.strftime("%a %b %d %H:%M:%S %Y"),"%a %b %d %H:%M:%S %Y"))
1469242747.0


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 当前时区的名称
%% %号本身


[b] (4)获取某月的日历:[/b]

Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历:

>>> import calendar
>>> cal=calendar.month(2016,10)
>>> print cal
October 2016
Mo Tu We Th Fr Sa Su
1  2
3  4  5  6  7  8  9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31


[b] 时间模块和日期模块还有许多处理时间和转换时间的内置函数,在此不做介绍。[/b]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: