描述
求从给定时刻开始过了给定时间后的时刻。
输入
有若干组数据。
每组数据有2行,第一行是给定时刻,可能有两种格式
格式1) 年 月 日 时 分(时是24小时制)
格式2) 月-日-年 时:分 上下午 (时是12小时制,注意没有秒)
第二行是时间增量,也可能有两种格式
格式1) 一个整数,代表多少秒
格式2) 日 时 分
输出
对每组数据,输出给定时刻加上时间增量后的新时刻,24小时制
格式如: 1982-12-10 12:12:28
样例输入
1982 12 1 23 0 737848 1982 12 1 23 15 180 2 18 12-01-1982 1:23 AM 737848
样例输出
1982-12-10 11:57:28 1983-05-31 01:33:00 1982-12-09 14:20:28
代码答案:
import datetime
while True:
try:
dt = input()
if dt.count(" ") > 2:
year, month, day, hour, mini = map(int,dt.split())
nowtime = datetime.datetime(year, month,
day, hour, mini)
else:
nowtime = datetime.datetime.strptime(dt,
"%m-%d-%Y %I:%M %p")
# 由字符串生成
lst = input().split()
if len(lst) == 1:
delta = datetime.timedelta(seconds=int(lst[0]))
else:
day, hour, mini = map(int, lst)
delta = datetime.timedelta(days = day,
hours= hour,minutes=mini)
newtime = nowtime + delta
print(newtime.strftime("%Y-%m-%d %H:%M:%S"))
except Exception as e:
#print(e)
break
该博客介绍了如何使用Python进行时间处理,包括解析不同格式的日期和时间,以及计算从给定时间开始的增量。通过示例代码展示了如何利用datetime模块进行日期和时间的加减操作,并输出24小时制的格式。

1万+

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



