Python之time模块的time()函数生成一组格式为10位数的浮点数被称之为时间戳,它是从格林威治时间1970年1月1日00:00:00(北京时间1970年01月01日08:00:00)起至现在的总秒数。
有时程序员为了增加计算的精度,将时间戳扩大1000倍,以毫秒为单位计数,此时间戳数字变为13位。需要强调的是‘秒’转换为‘毫秒’是1000倍,千万别想当然记成‘分’转换‘秒’的60倍。
模块名.函数名:time.time()
import time,random
def pt(s): # 打印 变量和变量类型函数
return print('n值为:{}nn类型为:{}nn'.format(s,type(s)))
# 取系统当前时间戳
time0 = time.time()
pt(time0)
输出结果如下:
值为:1656081341.2252388
类型为:
附上 time 库几个常用函数:
time.strptime():将特定字符串格式的时间,转换为struct_time
time.strftime():将struct_time,转换为特定字符串格式的时间
time.time():将当前时间转换为时间戳
time.mktime():将struct_time转换为时间戳,输入当地struct_time,输出格林威治时间戳
time.localtime():将时间戳转换为struct_time(当地时间)
time.gmtime():将时间戳转换为struct_time(格林威治时间)
localtime 与 gmtime 两者关系:例如,localtime北京时间 = gmtime格林威治时间 + 8小时(时间戳加上 8×60×60 = 28800 秒)
2、前后两个时间戳之差是秒数之差我们一般采用默认的10位数字时间戳,前后两个时间戳之差是秒数之差;如果采用13位数字时间戳,前后两个时间戳之差就是毫秒数之差。当然,也可以通过变换变成小时数之差(见本文第3条)。
# 随机延长1-10秒 time.sleep(random.uniform(1-10秒)) time1 = time.time() t = time1-time0 pt(t)
输出结果如下:
值为:5.554218292236328
类型为:
【小时】取值采用 t 值除以3600取整得到,【分】取值采用 t 值除以60再用60进行模运算取整得到。最后,采用 2 位右对齐空位填 0 即 {:0>2} 得到工整的输出格式。
# 为了显示【小时:分】格式,将前边的时间戳之差 t 放大3600倍,由秒差变为小时差
t = t*60*60
pt('标准时间格式:{:0>2}:{:0>2}'.format(int(t/3600),int(t/60%60)))
输出结果如下:
标准时间格式:05:33
类型为:
希望以上分享对您有帮助。



