博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

python学习之time模块

Posted on 2017-10-17 11:45  开飞机的贝塔  阅读(212)  评论(0编辑  收藏  举报
time.time()

将时间作为浮点数返回。

在Windows和大多数Unix系统上,时代是1970年1月1日00:00:00(UTC),并且闰秒不计入从时代开始的秒数。

>>> time.time()
1508211081.817371
>>> a = time.time()
>>> time.gmtime(a)
time.struct_time(tm_year=2017, tm_mon=10, tm_mday=17, tm_hour=3, tm_min=32, tm_sec=2, tm_wday=1, tm_yday=290, tm_isdst=0)

可以使用gmtime()将时间戳转换为更为友好的方式

 

time.gmtime([second])

将从时代以秒为单位的时间转换为UTC的struct_time,其中dst标志始终为零。

如果没有提供secs或None,则使用time()返回的当前时间。

>>> time.gmtime(0)
time.struct_time(tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0)
>>> time.gmtime()
time.struct_time(tm_year=2017, tm_mon=10, tm_mday=17, tm_hour=3, tm_min=35, tm_sec=26, tm_wday=1, tm_yday=290, tm_isdst=0)

 

time.localtime([second])

像gmtime(),但转换为本地时间。如果没有提供secs或None,则使用time()返回的当前时间。

>>> time.localtime()
time.struct_time(tm_year=2017, tm_mon=10, tm_mday=17, tm_hour=11, tm_min=40, tm_sec=24, tm_wday=1, tm_yday=290, tm_isdst=0)

 

time.sleep(seconds)

暂停执行调用的线程。参数可以是浮点数,以指示更精确的睡眠时间。

 

time.strftime(format [,t])

将表示由gmtime()或localtime()返回的时间的元组或struct_time转换为format参数指定的字符串。

如果没有提供t,则使用localtime()返回的当前时间。

格式必须是字符串。如果t中的任何字段超出允许范围,则引发ValueError。

>>> time.strftime('%Y-%m-%d')
'2017-10-17'

 格式表

指令 | 含义 | 说明
=========================
%a | 区域缩写的工作日名称。
%A | Locale的完整工作日名称。
%b | 区域设置的缩写月份名称。
%B | 语言环境的全月份名称。
%c | 区域设置适当的日期和时间表示。
%d | 十进制数的日期[01,31]。
%H | 小时(24小时制)为十进制数[00,23]。
%I | 小时(12小时制)为十进制数[01,12]。
%j | 年份中的十进制数[001,366]。
%m | 十进制数[01,12]。
%M | Minute为十进制数[00,59]。
%p | Locale相当于AM或PM。 (1)
%S | 秒数为十进制数[00,61]。 (2)
%U | 一年的周数(星期日作为一周的第一天)为十进制数[00,53]。在第一个星期日之前的新的一年的所有日子被认为是在第0周。(3)
%w | 平日作为十进制数[0(星期日),6]。
%W | 年份周数(星期一为星期一)为十进制数[00,53]。在第一个星期一之前的新一年的所有日子都被认为是在第0周。(3)
%x | 区域设置适当的日期表示。
%X | 区域设置适当的时间表示。
%y | 年份没有世纪作为十进制数[00,99]。
%Y | 年份,世纪为十进制数。
%z | 时区偏移,表示+ HHMM或-HHMM格式的UTC / GMT的正或负时间差,其中H表示十进制小时数字,M表示十进制小数位数[-2359,+2359]。
%Z | 时区名称(没有字符,如果没有时区存在)。
%% | 字面''字符。