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

Python中如何获取列表中与最后元素不同的首个前置值?

查找列表末尾前首个不同元素的解决方案

实现思路

  1. 先获取列表的最后一个元素作为参照值
  2. 从列表的倒数第二个元素开始,向前遍历查找第一个与参照值不同的元素
  3. 处理空列表、所有元素相同这类边界情况

代码实现(Python)

def find_first_diff_before_last(lst):
    if not lst:
        return None  # 处理空列表
    last_val = lst[-1]
    # 从倒数第二个元素开始反向遍历
    for val in reversed(lst[:-1]):
        if val != last_val:
            return val
    # 所有元素都与最后一个元素相同的情况
    return None

# 测试示例
test_list = [1,7,9,8,5,5,5,5,5,5,5,5,5]
print(find_first_diff_before_last(test_list))  # 输出:8

边界情况说明

  • 空列表:返回None
  • 所有元素相同的列表(如[3,3,3]):返回None
  • 仅两个不同元素的列表(如[2,5]):返回第一个元素2

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 14:45:56