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

Python嵌套列表处理:判断子列表含指定字符并生成结果列表

修正嵌套列表的判断逻辑,实现预期结果

你的代码问题在于遍历了每个子列表中的所有元素,导致每个元素都会向result追加一次值,最终结果长度和原列表所有元素总数一致,而不是和子列表的数量匹配。

要实现每个子列表对应一个结果的需求,只需要针对每个子列表做一次是否包含₾的判断即可,以下是两种可行的修正方案:

方案一:基础循环实现

mylist = [['a','b','c','₾'],['x','t','f','₾'],['a','d'],['r','y'],['c','₾'],['a','b','c','i'],['h','j','l','₾']]
result = []
for row in mylist:
    # 检查当前子列表是否包含目标字符
    if '₾' in row:
        result.append('₾')
    else:
        result.append(None)
print(result)  # 输出: ['₾','₾',None,None,'₾',None,'₾']

方案二:列表推导式简化实现

如果你想让代码更简洁,可以用Python的列表推导式一行完成:

mylist = [['a','b','c','₾'],['x','t','f','₾'],['a','d'],['r','y'],['c','₾'],['a','b','c','i'],['h','j','l','₾']]
result = ['₾' if '₾' in row else None for row in mylist]
print(result)  # 输出: ['₾','₾',None,None,'₾',None,'₾']

这两种方案都是直接对每个子列表进行判断,每个子列表仅向result中追加一次值,完全符合你的预期需求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 20:15:42