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

Python统计列表相邻重复元素时最后一个元素统计错误如何解决

列表相邻重复元素统计问题修复

需求说明

实现列表相邻重复元素的统计功能,将元素和连续出现次数依次存入结果列表。

示例输入输出

input = ["a", "a", "a", "c", "b", "b", "c"]
# 预期输出
['a', '3', 'c', '1', 'b', '2', 'c', '1']

现有代码问题

原代码

lst = ["a", "a", "a", "c", "b", "b", "c"]

result = []
index = 0

while(index < len(lst)-1):
    count = 1
    result.append(lst[index])
    while(lst[index] == lst[index+1]):
        count += 1
        index += 1

    result.append(str(count))
    index += 1
    print("step: ", result)

print("result: ", result) 

实际输出

step:  ['a', '3']
step:  ['a', '3', 'c', '1']
step:  ['a', '3', 'c', '1', 'b', '2']
result:  ['a', '3', 'c', '1', 'b', '2']

问题原因

外层循环判断条件为index < len(lst)-1,当索引移动到最后一个元素位置(值为len(lst)-1)时,会直接跳出循环,导致最后一个元素未被统计。

修复后的代码

lst = ["a", "a", "a", "c", "b", "b", "c"]
# 第二个测试输入可直接替换下方lst变量
# lst = ['East', 'East', 'East', 'East', 'East', 'West', 'West', 'West', 'West', 'North', 'South', 'West', 'West', 'West', 'North', 'South', 'West', 'West', 'West', 'North', 'North', 'West', 'West', 'West', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'East', 'South', 'South', 'East', 'East', 'East', 'North', 'North', 'East', 'East', 'South', 'South', 'South', 'South', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West', 'West']

result = []
index = 0
n = len(lst)

while index < n:
    count = 1
    result.append(lst[index])
    # 内层比较前先判断下一个索引是否越界
    while index + 1 < n and lst[index] == lst[index+1]:
        count += 1
        index += 1
    result.append(str(count))
    index += 1
    print("step: ", result)

print("result: ", result)

修复验证

针对第一个测试输入,运行后输出如下,符合预期:

step:  ['a', '3']
step:  ['a', '3', 'c', '1']
step:  ['a', '3', 'c', '1', 'b', '2']
step:  ['a', '3', 'c', '1', 'b', '2', 'c', '1']
result:  ['a', '3', 'c', '1', 'b', '2', 'c', '1']

修复后的代码同时支持第二个长测试输入,替换lst变量值即可直接运行验证。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 00:45:00