Select 在列表列表中的位置

Select where in list of list

我有一个包含此类数据的列表列表:

data = [[[1], 1, "A", [1,2], "ab"],
        [[2], 2, "B", [2,1], "bc"],
        [[2], 2, "C", [2,1], "bc"]]

他们在 python 中是一种简单的方法来获取满足某些特定条件的所有元素的子列表,例如获取第三个元素等于“A”的所有元素?更一般的是他们通过 select where 列表列表中的语句的方法?

使用列表理解:

[l for l in data if l[2] == 'A']

输出:

[[[1], 1, 'A', [1, 2], 'ab']]
list(filter(lambda x: x[2] == 'A', data)

输出:

[[[1], 1, 'A', [1, 2], 'ab']]