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

如何移除元组列表中首元素在指定列表内的元组

过滤元组列表的实现方案

需求很明确:从包含元组的列表里,剔除所有元组首元素出现在指定词语列表中的项。

先看原始数据:

list_of_tuples = [
    ("apple", 2),
    ("banana", 54), 
    ("flower", 5), 
    ("apple", 4), 
    ("fruit", 3)
]

list_of_words = [
    "apple", 
    "banana"
]

方法一:列表推导式(简洁直观)

直接用列表推导式筛选符合条件的元组,一行代码就能搞定:

filtered_list = [t for t in list_of_tuples if t[0] not in list_of_words]

运行后filtered_list就是目标结果:

[("flower", 5), ("fruit", 3)]

方法二:用集合优化查找效率(大数据量场景)

如果list_of_words包含大量元素,把它转成集合能大幅提升查找速度(集合成员判断是O(1),列表是O(n)):

word_set = set(list_of_words)
filtered_list = [t for t in list_of_tuples if t[0] not in word_set]

结果和上面完全一致,但处理大规模数据时性能更优。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 07:20:48