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

Python3遍历任意长度列表提取OS=及后续关联元素的实现求助

功能实现代码

核心思路是新增状态位标记当前是否处于OS=对应的有效提取段,遍历全列表时根据状态决定是否保存元素:

OSarr = []
# 状态标记:是否处于OS=开头的有效提取段中
in_os_segment = False

# 注意变量名大小写和你定义的keyLabelRun保持一致
for item in keyLabelRun:
    # 优先判断是否遇到了新的OS=开头元素
    if 'OS=' in item:
        in_os_segment = True
        OSarr.append(item)
        continue
    # 如果当前在有效提取段中
    if in_os_segment:
        # 遇到带=的元素,说明OS段结束
        if '=' in item:
            in_os_segment = False
        else:
            # 不是带=的元素,加入结果
            OSarr.append(item)
    # 不在有效段的元素直接跳过
效果验证

用你给出的示例列表运行后,得到的OSarr结果为:

['OS=Dengue', 'virus', '3', 'OS=Bacillus', 'subtilis', 'XF-1']

完全匹配提取要求,且自适应两个OS=条目之间任意长度的无=元素,同时直接遍历元素而非索引,避免了原写法可能出现的索引越界问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 21:09:05