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

Python如何判断仅含两种值的列表元素是否交替排列?

Python实现列表交替排列校验

核心逻辑

题目已经限定列表仅包含两种不同的字符串元素,因此只要保证所有相邻元素互不相同,就符合交替排列的要求。

代码实现

def is_alternating(lst: list) -> bool:
    # 长度小于等于1的列表默认符合要求,可按需调整该逻辑
    if len(lst) <= 1:
        return True
    # 校验所有相邻元素是否互不相同
    return all(lst[i] != lst[i-1] for i in range(1, len(lst)))

测试示例

用给出的测试用例验证效果:

list1 = ['A', 'C', 'A', 'C', 'A', 'C']
print(is_alternating(list1)) # 输出 True

list2 = ['A', 'A', 'A', 'C', 'A', 'C']
print(is_alternating(list2)) # 输出 False

list3 = ['A', 'C', 'C', 'C', 'A', 'C']
print(is_alternating(list3)) # 输出 False

list4 = ['A', 'C', 'A', 'C', 'A', 'A']
print(is_alternating(list4)) # 输出 False

补充说明

如果后续需要兼容存在更多种元素的场景,可以在函数开头新增校验逻辑,先判断列表去重后的长度是否等于2,再执行后续校验即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 19:24:05