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

Python实现summer_69函数:忽略6到9区间元素计算数组总和

问题解答

1. 有没有对应功能的内置函数?

Python没有专门实现「忽略从6开始到下一个9为止的所有元素求和」规则的内置函数,需要自己写逻辑实现。

2. 正确实现方式

你之前试图直接用remove()删区间的思路不可行:list.remove()只能删除首个匹配的指定元素,且是原地修改操作返回值为None,直接赋值会导致后续sum报错。
更稳妥的实现是用状态标记法,遍历数组时记录当前是否处于需要忽略的区间内:

def summer_69(arr):
    ignore = False
    total = 0
    for num in arr:
        if num == 6:
            # 遇到6,开启忽略模式
            ignore = True
        elif num == 9 and ignore:
            # 遇到对应结束的9,关闭忽略模式
            ignore = False
        elif not ignore:
            # 不在忽略区间的数累加
            total += num
    return total

3. 测试验证

运行你给出的测试用例结果完全匹配:

  • summer_69([1, 3, 5]) --> 9
  • summer_69([4, 5, 6, 7, 8, 9]) --> 9
  • summer_69([2, 1, 6, 9, 11]) --> 14
    空数组输入 summer_69([])也会返回0,符合规则要求。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 14:18:04