我试图找出我的Tabu
列表(2D)是否包含一个部分包含另一个列表的列表。
比如:
Tabu = [[1, 2, 3], [3, 2, 1, 0]]
Test = [3, 2, 1]
Test2 = [1, 3, 2]
这里,Tabu包含一个列表:[3, 2, 1, 0]
包含[3, 2, 1]
,所以Tabu包含测试,但不包含Test2,因为在Tabu中没有按这个顺序包含[1, 3, 2]
的列表。
注意:测试的所有值必须在Tabu的子列表中才能通过。将列表更改为集合不是一个选项。Test中没有重复的值,在Tabu中只有两个单独的列表可以包含相同的值。
编辑:更多信息和澄清
发布于 2022-11-20 14:28:03
您需要遍历Tabu并检查测试列表中的所有元素是否都在Tabu的子列表中
>>> Tabu = [[1, 2, 3], [4, 5, 6, 0]]
>>> Test = [4, 5, 6]
>>>
>>> result = any(all(i in sublist for i in Test) for sublist in Tabu)
>>> result
True
>>>
https://stackoverflow.com/questions/74512493
复制相似问题