Python 蓝桥杯试题 历届真题 时间显示【第十二届】【省赛】【B组】

Python 蓝桥杯试题 历届真题 时间显示【第十二届】【省赛】【B组】

题目描述:

小蓝要和朋友合作开发一个时间显示的网站。在服务器上,朋友已经获取了当前的时间,用一个整数表示,值为从 1970 年 1 月 1 日
00:00:00 到当前时刻经过的毫秒数。
现在,小蓝要在客户端显示出这个时间。小蓝不用显示出年月日,只需要显示出时分秒即可,毫秒也不用显示,直接舍去即可。
给定一个用整数表示的时间,请将这个时间对应的时分秒输出。
【输入格式】
输入一行包含一个整数,表示时间。
【输出格式】
输出时分秒表示的当前时间,格式形如 HH:MM:SS,其中 HH 表示时,值为 0 到 23,MM 表示分,值为 0 到 59,SS
表示秒,值为 0 到 59。时、分、秒不足两位时补前导 0。
【样例输入 1】   
46800999
【样例输出 1】   
13:00:00
【样例输入 2】   
1618708103123
【样例输出 2】   
01:08:23
【评测用例规模与约定】
对于所有评测用例,给定的时间为不超过 10^18 的正整数。

代码如下:

n = int(input())
a = n // 1000#去除毫秒数
if a > 86400:#86400为24小时的总秒数
    hh = a % 86400 // 3600
    #若时间大于24小时先,以24h为单位求出整数天外剩余的时间,
    # 再求出小时
    mm = a // 60 % 60#求分钟
    ss = a % 3600%60#求秒数
else:
    hh = a // 3600
    mm = a // 60 % 60
    ss = a % 3600%60
print('%.2d:%.2d:%.2d' % (hh, mm, ss))#保留2位有效数字

时间戳以前都不知道,不知道的小伙伴也可百度一下
知识梳理:
计算机系统的时间戳是从(19701月1日00:00:00后经过的浮点秒数)

了解下Python 里显示时间戳和与其有关的函数(以下参考自菜鸟教程)
time()方法语法:

time.time()

localtime()方法语法:

time.localtime([ sec ]) sec – 转换为time.struct_time类型的对象的秒数。

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

asctime()方法语法: time.asctime([t])) t – 9个元素的元组或者通过函数 gmtime() 或
localtime() 返回的时间值。

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

time.gmtime([ sec ]) sec – 转换为time.struct_time类型的对象的秒数。

你可能感兴趣的:(笔记,python,python,蓝桥杯,开发语言)