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

按类别提取元组最后元素:如何获取各状态对应的最后时间值

提取每个状态对应的最后时间元素

嘿,这个需求其实很容易解决,用字典就能完美搞定,而且完全不用把元组转成列表~

核心思路

核心思路就是利用字典键的唯一性:遍历你的元组集合时,用状态名称作为字典的键,时间字符串作为值。每次遇到同一个状态,后面的时间会自动覆盖前面的,遍历完成后,每个键对应的值就是该状态最后出现的时间。

代码示例

假设你的元组集合是这样的:

state_records = (("State A", "0:07:58"), ("State A", "0:15:48"), ("State B", "0:32:20"), ("State B", "1:04:30"))

处理代码如下:

# 初始化一个空字典来存储每个状态的最后时间
last_state_times = {}

# 直接遍历元组集合,无需转换为列表
for state, time_str in state_records:
    # 每次遇到同一状态,更新为当前时间(自动保留最后一次的)
    last_state_times[state] = time_str

# 如果你需要把结果整理成列表
result = list(last_state_times.values())
print(result)  # 输出: ['0:15:48', '1:04:30']

额外说明

  • 这个方法不管你的元组集合里状态的顺序如何(比如State A和State B交替出现),都能正确捕获每个状态的最后一次时间。
  • 如果你还需要保留状态和时间的对应关系,直接用last_state_times字典就可以,比如last_state_times["State A"]就能拿到对应的最后时间。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 07:41:33