我有一个包含此类数据的列表:
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']]