python time模块详解_python time模块

Python---time模块使用详解

time.sleep() --- 使程序暂停数秒。

调用:time.sleep(seconds), 传入秒数, 程序运行到这个函数时暂停一段时间。

time模块

time模块中时间表现的格式主要有三种:

a、timestamp时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量

b、struct_time时间元组,共有九个元素组。

c、format time 格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。

时间格式转换图:

2d7f34ef868b

timestamp和struct_time之间的相互转换:

time.localtime()获取当地时间即struct_time。

import time

print(time.localtime())

*************************************************************

time.struct_time(tm_year=2019, tm_mon=8, tm_mday=22, tm_hour=14, tm_min=21, tm_sec=41, tm_wday=3, tm_yday=234, tm_isdst=0)

time.gmtime(sec):函数将一个时间戳转换为UTC时区(0时区)的struct_time,可选的参数sec表示从1970-1-1以来的秒数。其默认值为time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象)。

import time

s = time.gmtime(time.time())

print(s)

************************************************************************

time.struct_time(tm_year=2019, tm_mon=8, tm_mday=22, tm_hour=8, tm_min=44, tm_sec=26, tm_wday=3, tm_yday=234, tm_isdst=0)

time.mktime(struct_time):返回时间戳

import time

s = time.mktime(time.localtime())

print(s)

时间元祖和格式化时间之间的转换

time.strftime():时间转换字符串

time.strftime(format,dt)

dt为具体时间,datetime和date格式均可,甚至可以为时间数组struct_time

dt.strftime(format)

format可以取"%Y-%m-%d %H:%M:%S"的任意子串,来决定显示年月日时分秒,dt默认本地时间。

import time

print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))

time.sleep(2)

print(time.strftime('%Y-%m-%d %H:%M:%S'))

******************************************************************

2019-08-22 14:28:24

2019-08-22 14:28:26

那怎么把格式化时间转换成struct_time时间呢?

time.strptime():根据指定的格式把一个格式化时间转换为时间元组。

time.strptime(string[, format])

string -- 这是其中将根据给定的格式解析字符串格式的时间。

format -- 这是将用于解析该给定的字符串的指令。

格式参数使用相同的指令使用strftime();它默认为“%a %b %d %H:%M:%S %Y”相匹配的ctime()所返回的格式。

import time

s = time.strptime(time.strftime('%M%m%d%H%M%S',time.localtime()),'%Y%m%d%H%M%S')

print(s)

*********************************************************************

time.struct_time(tm_year=1108, tm_mon=2, tm_mday=21, tm_hour=7, tm_min=11, tm_sec=5, tm_wday=4, tm_yday=52, tm_isdst=-1)

转换成可读形式的字符串时间:

time asctime() 函数接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。

time.asctime([t]))

t -- 9个元素的元组或者通过函数 gmtime() 或 localtime() 返回的时间值。

返回值,返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。

import time

s = time.asctime(time.localtime())

print(s)

*************************************************************************

Thu Aug 22 17:21:26 2019

time.ctime():函数接受时间戳并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日 周二18时07分14秒)的24个字符的字符串。

import time

s = time.ctime(time.time())

print(s)

***************************************************************************

Thu Aug 22 17:23:34 2019

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值