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

Python如何高效从嵌套元组列表中移除指定条目?

高效移除不规则嵌套元组列表中的指定条目

核心思路

要高效完成这类嵌套结构的过滤,关键在于优化待删除条目的查询效率:将待删除的元组列表转为集合(集合的成员查询时间复杂度为O(1),远优于列表的O(n)),再通过嵌套列表推导式完成批量过滤。

实现代码

# 原始嵌套元组列表
original_list = [[(1, 5), (1, 7), (1, 8)], [(3, 3)], [(4, 2), (4, 3)], [(6, 6)]]
# 待删除的元组列表
list_delete = [(1, 7), (3, 3), (4, 2)]

# 将待删除元组转为集合,提升查询速度
delete_set = set(list_delete)

# 嵌套列表推导式过滤目标条目
result = [[item for item in sublist if item not in delete_set] for sublist in original_list]

print(result)
# 输出结果:[[(1, 5), (1, 8)], [], [(4, 3)], [(6, 6)]]

方案优势

  • 高效性:集合查询+列表推导式的组合,在数据量较大时(比如待删除条目数过千、嵌套列表元素过万),性能比直接用列表查询+循环append提升数倍
  • 通用性:支持任意长度的子列表(包括空列表),只要待删除元素是可哈希类型(元组、字符串、数字等)都能适用
  • 简洁性:一行推导式完成核心逻辑,代码可读性强

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 13:08:22