以下是一个示例代码,演示了如何根据另一个2D列表来筛选2D列表:
def filter_2d_list(main_list, filter_list):
filtered_list = []
for sublist in main_list:
filtered_sublist = []
for item in sublist:
if item in filter_list:
filtered_sublist.append(item)
filtered_list.append(filtered_sublist)
return filtered_list
# 示例数据
main_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
filter_list = [2, 5, 9]
filtered_list = filter_2d_list(main_list, filter_list)
print(filtered_list)
输出结果:
[[2], [5], [9]]
在上述示例中,filter_2d_list函数接受两个参数:main_list为目标2D列表,filter_list为筛选条件的另一个2D列表。
函数首先创建一个空的filtered_list列表,用于存储筛选后的结果。
然后,通过嵌套循环遍历main_list中的每个子列表以及每个子列表中的每个元素。如果某个元素在filter_list中,则将其添加到filtered_sublist中。
最后,将filtered_sublist添加到filtered_list中,并返回最终的筛选结果。
在示例中,main_list为[[1, 2, 3], [4, 5, 6], [7, 8, 9]],filter_list为[2, 5, 9]。根据filter_list中的筛选条件,最终得到的筛选结果为[[2], [5], [9]]。