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

Python实现时间点选择及时分秒先后比较功能代码咨询

时间先后比对完整实现代码

实现说明

  • 直接使用给定的10个固定时间元组,替换原代码中的随机生成逻辑
  • 支持输入#序号格式选择两个时间点,自带输入合法性校验
  • 严格按照「小时优先→小时相同比分钟→分钟相同比秒」的if判断逻辑比对时间先后
  • 时间输出完全匹配要求的print([dt.strftime('%H:%M:%S') for dt in dts])格式
from datetime import time

# 固定使用给定的10个时间元组,对应展示序号1-10
moments = [
    (6, 14, 39), (16, 4, 22), (14, 31, 3), (9, 27, 56), (17, 1, 33),
    (15, 10, 42), (7, 53, 47), (18, 11, 6), (8, 22, 45), (12, 32, 42)
]

# 打印所有可选时间供用户参考
print("可选时间列表(序号: 时:分:秒):")
for idx, (h, m, s) in enumerate(moments, start=1):
    print(f"#{idx}: {h:02d}:{m:02d}:{s:02d}")

# 循环接收输入直到格式合法
while True:
    input_str = input("\n请输入两个要比对的时间序号,用空格分隔,例如#3 #5:").strip()
    inputs = input_str.split()
    # 校验输入格式
    if len(inputs) != 2 or not all(i.startswith('#') and i[1:].isdigit() for i in inputs):
        print("输入格式错误,请按#序号 #序号的格式输入")
        continue
    idx1 = int(inputs[0][1:]) - 1
    idx2 = int(inputs[1][1:]) - 1
    # 校验序号范围
    if not (0 <= idx1 < len(moments) and 0 <= idx2 < len(moments)):
        print(f"序号超出范围,请输入1到{len(moments)}之间的序号")
        continue
    if idx1 == idx2:
        print("请选择两个不同的时间点")
        continue
    break

t1 = moments[idx1]
t2 = moments[idx2]
h1, m1, s1 = t1
h2, m2, s2 = t2

# 按要求用if条件逐层比对时间先后
earlier = None
if h1 < h2:
    earlier = t1
elif h1 > h2:
    earlier = t2
else:
    # 小时一致,比对分钟
    if m1 < m2:
        earlier = t1
    elif m1 > m2:
        earlier = t2
    else:
        # 分钟一致,比对秒
        if s1 < s2:
            earlier = t1
        else:
            earlier = t2

# 按要求格式构造time对象列表并输出
dts = [time(h, m, s) for h, m, s in [t1, t2, earlier]]
print("\n所选两个时间、其中更早的时间依次为:")
print([dt.strftime('%H:%M:%S') for dt in dts])

关键逻辑说明

  • 输入处理做了三层校验:格式是否符合#数字要求、序号是否在1-10范围内、是否选择重复时间,避免运行报错
  • 时间比对完全使用if分支逐层判断,没有依赖Python元组默认的按位比较特性,完全匹配指定比对规则
  • 输出环节先把时间元组转为datetime.time对象,再用要求的列表推导+strftime格式输出,和指定输出代码格式完全一致
  • 原代码中sorted_moments < sorted(moments)为笔误,本实现不需要随机生成、排序逻辑,已直接移除

内容的提问来源于stack exchange,提问作者Kamel Awad

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 07:12:27