一、time模块
1、三种时间表现形式
timestamp:时间戳,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。
struct_time: 时间元组,共有九个元素组。
format time: 格式化时间,已格式化的结构使时间更具可读性。包括自定义格式和固定格式。场指时间格式字符串
2、时间转换图

3、示例代码
import time
'''
三种格式:
时间戳timestape
时间元组struct_time
格式化时间format_time(包括自定义格式与固定格式)
'''
#1.时间戳为一个float格式数字
a1=time.time()
print('当前时间戳为:',a1)
print(type(a1))
#2.直接获取当前时间戳的struct_time格式
a2=time.localtime()
print('')
print('当前时间(戳)的struct_time格式',a2)
#time.struct_time(tm_year=2019, tm_mon=1, tm_mday=24, tm_hour=4, tm_min=16,
tm_sec=28, tm_wday=3, tm_yday=24, tm_isdst=0)
#3.时间戳转为struct_time ,结果同上
a3=time.gmtime(a1)
print('')
print('时间戳转为struct_time',a3)
#4.struct_time转为时间戳
a4=time.mktime(a2)
print('')
print(a4)
#5.当前时间的字符串str格式 Thu Jan 24 12:16:28 2019 是一种固定的格式化时间
a5=time.ctime()
print('')
print(a5)
#6.当前时间的struct_time转为特定格式化时间
a6=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())
print('')
print('当前时间转为特定格式化时间',a6)
#7.将特定格式化时间转为struct_time
a7=time.strptime('2019-01-24 15:28:03',"%Y-%m-%d %H:%M:%S")
print('')
print('特定格式化时间转为stuct_time:',a7)
补充:time.clock()
在UNIX系统上,它返回的是“进程时间”,它是用秒表示的浮点数(时间戳)。
而在WINDOWS中,第一次调用,返回的是进程运行的实际时间。而第二次之后的调用
是自第一次调用以后到现在的运行时间。
start = time.clock()
test()
finish = time.clock()
fps = N / (finish - start) # N 为图片数
二、timeit 模块
特点:准确测量小段代码的执行时间
timeit 模块中的三个函数:
- timeit.timeit(stmt='pass', setup='pass', timer=<default timer>, number=1000000):创建一个Timer实例,参数分别是stmt(需要测量的语句或函数),setup(初始化代码或构建环境的导入语句),timer(计时函数),number(每一次测量中语句被执行的次数)
- timeit.repeat(stmt='pass', setup='pass', timer=<default timer>, repeat=3, number=1000000):创建一个Timer实例,指定整个试验的重复次数,返回一个包含了每次试验的执行时间的列表,利用这一函数可以很方便得实现多次试验取平均的方法。
- timeit.default_timer():默认的计时器,一般是time.perf_counter(),time.perf_counter()方法能够在任一平台提供最高精度的计时器(它也只是记录了自然时间,记录自然时间会被很多其他因素影响,例如计算机的负载)
示例代码
from timeit import default_timer as timer
start=timer()
...
...
end=timer()
print('程序历时:',end-start)
本文介绍了Python中的time和timeit模块。time模块涉及时间戳、时间元组和格式化时间,提供了时间转换和示例代码。timeit模块专注于测量小段代码的执行时间,包括timeit.timeit()、timeit.repeat()函数,以及默认计时器timeit.default_timer()。

8916

被折叠的 条评论
为什么被折叠?



