首页 > 解决方案 > Python遍历嵌套列表,但只有偶数索引

问题描述

我有一个像这样的嵌套列表,例如: L = [[A,200][B,300][C,500][A,300]] 我想知道是否只有字母重复而不是数字。我试过了,但这也会告诉我数字是否重复。

def find_duplicates(L):
    for list in L:
        for number in list:
            print(max(Counter(sum(L, [])).values()) > 1)

我不知道是否要展平列表,然后只遍历单个列表(但这会破坏嵌套列表的目的),或者是否有办法检查每个子列表的第一个索引。谁能让我知道我该怎么做?

谢谢!

标签: pythonlistloopsnested

解决方案


您可以使用集合来跟踪在遍历子列表时“看到”的字母:

def has_duplicates(L):
    seen = set()
    for letter, _ in L:
        if letter in seen:
            return True
        seen.add(letter)
    return False

推荐阅读