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

如何检查一个列表是否包含另一个列表元素?

检查列表中是否包含子列表的实现方法

你需要判断的是列表中是否存在类型为列表的元素,无需关注元素内容是否相似。可以通过any()函数结合isinstance()类型检查来实现,具体代码如下:

l1 = [1,2,3]
l2 = [4,5,[6]]

# 定义判断函数
def has_sublist(lst):
    # 遍历列表元素,检查是否有元素是列表类型
    return any(isinstance(item, list) for item in lst)

# 测试示例
print(has_sublist(l1))  # 输出: False
print(has_sublist(l2))  # 输出: True

原理说明

  • isinstance(item, list):逐个检查列表中的元素是否属于列表类型;
  • 生成器表达式(isinstance(item, list) for item in lst)会遍历列表的每一个元素,生成布尔值;
  • any()函数会在找到第一个True结果时立即停止遍历,返回True,如果所有元素都不满足条件则返回False,这种写法效率较高。

如果不需要封装成函数,也可以直接使用一行代码完成判断:

# 直接判断l1是否包含子列表
print(any(isinstance(i, list) for i in l1))  # False
# 直接判断l2是否包含子列表
print(any(isinstance(i, list) for i in l2))  # True

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 05:05:26