Python时间模块之Time模块解析

本文介绍了Python中的time模块,包括时间戳、UTC、struct_time元组等时间表示方式,并详细讲解了time.time()、time.localtime()、time.gmtime()、time.mktime()、time.sleep()、time.clock()、time.asctime()、time.ctime()、time.strftime()和time.strptime()等常用函数的用法和示例。
摘要由CSDN通过智能技术生成

Python中time模块详解

在我们平常的代码中,经常需要和时间打交道。在Python中,与时间处理相关的模块有:time、datetime以及calendar。学会计算时间,对程序的调优非常重要,可以在程序中狂打时间戳,来具体判断程序中哪一块耗时最多,从而找到程序调优的重心处。这里先来讲一个time模块。
在开始前,先说明几点:

  1. 在Python中,通常有这几种方式表示时间:时间戳、格式化的时间字符串、元组(struct_time 共九种元素)。由于Python的time模块主要是调用C库实现的,所以在不同的平台可能会有所不同。
  2. 时间戳(timestamp)的方式:时间戳表示是从1970年1月1号 00:00:00开始到现在按秒计算的偏移量。查看一下type(time.time())的返回值类型,可以看出是float类型。返回时间戳的函数主要有time()、clock()等。
  3. UTC(世界协调时),就是格林威治天文时间,也是世界标准时间。在中国为UTC+8。DST夏令时。
  4. 元组方式:struct_time元组共有9个元素,返回struct_time的函数主要有gmtime(),localtime(),strptime()。
>>> import time
>>> ls = time.localtime()
>>> ls
time.struct_time(tm_year=2015, tm_mon=8, tm_mday=24, tm_hour=9, tm_min=39, tm_sec=38, tm_wday=0, tm_yday=236, tm_isdst=0)

直接使用元组索引获取对应项的值:

>>> ls[0]
2015
>>> ls[1]
8
>>> ls[-1]
0

或者是使用成员符号调用:

>>> ls.tm_year
2015

既然是一个元组,那么就遵循元组的所有特性,比如索引(都从0开始),切片等。下面元组中各元素的解释:

tm_year :年
tm_mon :月(1-12)
tm_mday :日(1-31)
tm_hour :时(0-23)
tm_min :分(0-59)
tm_sec :秒(0-59)
tm_wday :星期几(0-6,0表示周日)
tm_yday :一年中的第几天(1-366)
tm_isdst :是否是夏令时(默认为-1)

time模块中常用的函数

使用该模块中的函数时,必须先引入该模块(import time)
1、time.time():返回当前时间的时间戳

>>> time.time()
1440337405.85
#对时间戳取整
>>> int(time.time())
1440746424

2、time.localtime( [secs] )
将一个时间戳转换为当前时区的struct_time,即时间数组格式的时间
参数:

  • sec – 转换为time.struct_time类型的对象的秒数

如果secs参数未提供,则以当前时间为准(即会默认调用time.time())。
未给定参数

>>> time.localtime()
time.struct_time(tm_year=2015, tm_mon=8, tm_mday=23, tm_hour=21, tm_min=49, tm_sec=27, tm_wday=6, tm_yday=235, tm_isdst=0)

给定参数

>>> time.localtime(1440337405.85)
time.struct_time(tm_year=2015, tm_mon=8, tm_mday=23, tm_hour=21, tm_min=43, tm_sec=25<
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值