You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何正确导入strptime以计算两个HH:MM:SS格式时间的差值?

问题解决与代码修正

错误原因

你碰到的module 'datetime' has no attribute 'strptime'错误,是因为strptime是datetime模块里**datetime类**的方法,不是模块本身的属性。直接用datetime.strptime调用是错误的,得改成datetime.datetime.strptime,或者换一种导入方式。

适配HH:MM:SS格式的完整代码

下面是修改后的代码,支持输入两个HH:MM:SS格式的时间并计算差值:

import datetime

# 输入HH:MM:SS格式的时间字符串
time_str1 = input("请输入第一个时间(格式HH:MM:SS):")
time_str2 = input("请输入第二个时间(格式HH:MM:SS):")

# 用datetime类的strptime方法解析时间
time1 = datetime.datetime.strptime(time_str1, "%H:%M:%S")
time2 = datetime.datetime.strptime(time_str2, "%H:%M:%S")

# 计算时间差
time_diff = time1 - time2

# 输出多种格式的差值结果
print(f"两个时间的差值(总秒数):{time_diff.total_seconds()}")
print(f"两个时间的差值(小时数):{time_diff.total_seconds() / 3600}")

# 格式化显示差值(xx小时xx分钟xx秒)
seconds = abs(int(time_diff.total_seconds()))
hours = seconds // 3600
remaining_seconds = seconds % 3600
minutes = remaining_seconds // 60
final_seconds = remaining_seconds % 60
print(f"格式化差值:{hours}小时{minutes}分钟{final_seconds}秒")

关键修改点

  • 调用strptime时,用datetime.datetime.strptime替代datetime.strptime;也可以改成from datetime import datetime,之后直接用datetime.strptime
  • 输入不再转成整数,直接接收HH:MM:SS格式的字符串,解析格式对应调整为%H:%M:%S
  • 新增了差值的格式化输出,更直观展示结果

内容的提问来源于stack exchange,提问作者im very stupid

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 06:55:20