awind 发表于 2022-10-14 20:53:28

救救孩子

请编写一个程序,从键盘输入两个时间点,格式hh:mm:ss(时:分:秒),计算并输出两个时间点相隔的秒数。

最最简单的做法就ok,刚学,谢谢

jackz007 发表于 2022-10-14 21:08:23

本帖最后由 jackz007 于 2022-10-14 21:13 编辑

t1 , t2 = input("输入时间 (hh:mm:ss hh:mm:ss) -> ") . split()
d1 , d2 = list(map(int , t1 . split(':'))) , list(map(int , t2 . split(':')))
x1 , x2 = d1 * 3600 + d1 * 60 + d1 , d2 * 3600 + d2 * 60 + d2
print(x2 - x1)
      运行效果:
D:\\Python>python x.py
输入时间 (hh:mm:ss hh:mm:ss) -> 00:01:01 21:01:01
75600

D:\\Python>

fcage 发表于 2022-10-14 22:53:36

from datetime import datetime

a = datetime.strptime(input(), "%H:%M:%S")
b = datetime.strptime(input(), "%H:%M:%S")

print((b-a).seconds)

awind 发表于 2022-10-15 11:00:58

fcage 发表于 2022-10-14 22:53


为什么报错呀

fcage 发表于 2022-10-15 11:47:37

不应该啊,datetime是内置模块,低一点的Python版本也有的吧,应该没有版本问题啊
from datetime import datetime

a = datetime.strptime(input(), "%H:%M:%S")
b = datetime.strptime(input(), "%H:%M:%S")

# 修改一下,保证大减小
if a <= b:
    print((b-a).seconds)
else:
    print((a-b).seconds)
运行效果:
PS C:\Users\tmf\OneDrive\桌面> python -u "c:\Users\tmf\OneDrive\桌面\temp.py"
11:45:03
11:42:03
180

awind 发表于 2022-10-15 13:49:21

fcage 发表于 2022-10-15 11:47
不应该啊,datetime是内置模块,低一点的Python版本也有的吧,应该没有版本问题啊

运行效果:

ok了,谢谢!! 还有就是在运行的时候怎么才能有提示要输入时间点
就是类似于:
请输入第一个时间点:00:00:00
请输入第二个时间点:00:00:03
3

fcage 发表于 2022-10-15 16:52:16

awind 发表于 2022-10-15 13:49
ok了,谢谢!! 还有就是在运行的时候怎么才能有提示要输入时间点
就是类似于:
请输入第一个时间点:0 ...

提示信息就是input里面的内容嘛,直接加进去就好了
from datetime import datetime

a = datetime.strptime(input('请输入第一个时间点'), "%H:%M:%S")
b = datetime.strptime(input('请输入第二个时间点'), "%H:%M:%S")

# 修改一下,保证大减小
if a <= b:
    print((b-a).seconds)
else:
    print((a-b).seconds)
页: [1]
查看完整版本: 救救孩子