大佬教程收集整理的这篇文章主要介绍了python time模块,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
从1970年1月1日00:00:00开始按秒计算的偏移量,float类型比如:
import time
a = time.time()
print(a)
返回值
1640528783.5935705
共有9个元素,元素含义如下:
关键字 | 描述 |
tm_year | 年 |
tm_mon | 月(1-12) |
tm_mday | 日(1-31) |
tm_hour | 时(0-23) |
tm_min | 分(0-59) |
tm_sec | 秒(0-61)闰年多2秒 |
tm_wday | 周一到周日(0-6) |
tm_yday | 一年中的第几天(1-366) |
tm_isdst | 是否夏令时(1是,0不是,默认-1未知) |
生成方式为:
参数为秒,不带表示当前时间
localtime()指本地时间
gmtime() 指格林威治时间
import time
a = localtime()
b = localtime(1234567890)
c = gmtime()
print(a)
print(b)
print(c)
返回结果
time.struct_time(tm_year=2021, tm_mon=12, tm_mday=26, tm_hour=23, tm_min=9, tm_sec=32, tm_wday=6, tm_yday=360, tm_isdst=0)
time.struct_time(tm_year=2009, tm_mon=2, tm_mday=14, tm_hour=7, tm_min=31, tm_sec=30, tm_wday=5, tm_yday=45, tm_isdst=0)
time.struct_time(tm_year=2021, tm_mon=12, tm_mday=26, tm_hour=15, tm_min=5, tm_sec=42, tm_wday=6, tm_yday=360, tm_isdst=0)
格式化时间字符含义如下
字符 | 含义 |
%a | 简化星期名称 |
%A | 完整星期名称 |
%b | 简化月份名称 |
%B | 完整月份名称 |
%c | 相应的日期和时间表示 |
%d | %d 一个月中的第几天(01 – 31) |
%H | 一天中的第几个小时(24小时制,00 – 23) |
%I | 第几个小时(12小时制,01 – 12) |
%j | 一年中的第几天(001 – 366) |
%m | 月份(01 – 12) |
%M | 分钟数(00 – 59) |
%p | 本地am或者pm的相应符 |
%S | 秒(01 – 61) |
%U | 一年中的星期数。(00 – 53星期天是一个星期的开始。)第一个星期天之前的所有天数都放在第0周 |
%w | 一个星期中的第几天(0 – 6,0是星期天) |
%W | 和%U基本相同,不同的是%W以星期一为一个星期的开始 |
%x | 相应日期,格式为 2021/12/26 |
%X | 相应时间,格式为 00:00:00 |
%y | 去掉世纪的年份(00 – 99) |
%Y | 完整的年份 |
%Z | 时区的名字(如果不存在为空字符) |
%% | ‘%’字符 |
有下面几种方式
ctime(),参数为时间戳,不填表示time.time()
asctime(),参数为元组,不填表示time.localtime()
strftime(),参数为string(format)和元组
import time
time.ctime()
'Sun Dec 26 23:11:52 2021'
time.ctime()
'Sun Dec 26 23:19:55 2021'
time.asctime()
'Sun Dec 26 23:20:04 2021'
time.strftime("%Y-%m-%d %X",time.localtime(1234567890))
'2009-02-14 07:31:30'
时间戳转化为元组
>>> time.localtime(1234567890)
time.struct_time(tm_year=2009, tm_mon=2, tm_mday=14, tm_hour=7, tm_min=31, tm_sec=30, tm_wday=5, tm_yday=45, tm_isdst=0)
时间戳转化为格式化时间
>>> time.ctime(1234567890)
'Sat Feb 14 07:31:30 2009'
元组转化为时间戳
>>> time.mktime(time.localtime(1234567890))
1234567890.0
元组转化为格式化时间
>>> time.asctime()
'Sun Dec 26 23:26:10 2021'
>>> time.asctime(time.localtime(1234567890))
'Sat Feb 14 07:31:30 2009'
>>> time.strftime("%Y-%m-%d %X",time.localtime(1234567890))
'2009-02-14 07:31:30'
格式化时间转为元组
>>> time.strptime('2009-02-14 07:31:30','%Y-%m-%d %X')
time.struct_time(tm_year=2009, tm_mon=2, tm_mday=14, tm_hour=7, tm_min=31, tm_sec=30, tm_wday=5, tm_yday=45, tm_isdst=-1)
time.sleep()参数为秒,表示程序阻塞时间
time.clock(),3.8.0版本后废弃此方发
time.process_time(),表示程序占用的CPU时长,不包含time.sleep()的时间,不太准确
time.perf_counter(),表示程序运行时长,包含time.sleep()的时间,因此我们的代码或脚本执行时长应该使用这个方发,这个方发需要首尾运行两次计算差值
a = time.process_time()
a1 = time.perf_counter()
#进程执行中断几秒
print("0")
time.sleep(3)
print("4")
sum = 0
for i in range(1,20000000):
sum += i
print(sum)
b = time.process_time()
b1 = time.perf_counter()
#计算程序运行时间
print("process_time方发计算此脚本运行时长为: %s"% str(b-a))
print("perf_counter方发计算此脚本运行时长为: %s"% str(b1-a1))
返回结果
0
4
199999990000000
process_time方发计算此脚本运行时长为: 2.703125
perf_counter方发计算此脚本运行时长为: 5.7041553
以上是大佬教程为你收集整理的python time模块全部内容,希望文章能够帮你解决python time模块所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。