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

不使用any或导入工具,实现含关联时间的姓名列表去重

解决姓名与时间绑定去重的问题

首先修正你原代码里的一个错误:range(len(name[i]))应该改为range(len(name)),否则循环范围会出错。

要实现姓名和对应时间绑定去重,且不使用any或额外工具库,你需要手动遍历二维列表检查姓名是否已存在,具体代码如下:

name = ["Michael", "Helen", "Mike", "Joe", "Michael"]
time = ["08:42:39", "08:39:56", "08:58:43", "09:04:03", "05:32:54"]

norepeat_list = []
for i in range(len(name)):
    # 标记当前姓名是否已存在于去重列表中
    exists = False
    # 遍历已有的去重项,检查姓名
    for item in norepeat_list:
        if item[0] == name[i]:
            exists = True
            break  # 找到匹配项后直接终止内层循环
    if not exists:
        # 姓名不存在时,添加姓名与时间的组合
        norepeat_list.append([name[i], time[i]])

# 输出结果
for item in norepeat_list:
    print(item)

代码说明

  • 用exists变量记录当前姓名是否已存在,初始设为False。
  • 内层循环遍历norepeat_list的每个子项,对比子项的第一个元素(姓名)与当前遍历的name[i],找到匹配项就把exists设为True并跳出内层循环,避免不必要的遍历。
  • 若exists仍为False,说明该姓名未被添加过,就将[姓名, 时间]的组合添加到norepeat_list中。

运行后得到的norepeat_list就是包含唯一姓名对应时间的二维列表:
[["Michael", "08:42:39"], ["Helen", "08:39:56"], ["Mike", "08:58:43"], ["Joe", "09:04:03"]]

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 15:51:52