【发布时间】:2022-11-21 07:46:12
【问题描述】:
我试图查明我的 Tabu 列表 (2D) 是否包含一个列表,该列表部分包含另一个列表。
喜欢:
Tabu = [[1, 2, 3], [4, 5, 6, 0]]
Test = [4, 5, 6]
这里 Tabu 包含一个列表:[4, 5, 6, 0] 包含 [4, 5, 6],因此 Tabu 包含 Test。
注意:Test 的所有值必须在 Tabu 的子列表中才能通过。
在尝试使用all 和in 的多种方法后,我没有主意了。
注意:将列表更改为集合不是一个选项。
【问题讨论】:
-
欢迎来到 StackOverflow。您说您使用
all和in尝试了多种想法 - 您在正确的道路上,请分享您认为可行的尝试,并且有人能够改进或修复它。当询问 SO 时,您应该始终共享一些代码并解释发生了什么以及您期望什么。 (顺便说一句,你对集合的评论表明你不关心元素的顺序,所以[6, 5, 0, 4]的子列表也会“包含”另一个列表,对吗?) -
我不太确定规则。
Test = [6, 5, 4](错误的顺序 - 所以它不是列表中的子列表)是否匹配?如果在 Tabu 或 Test 中重复了一个数字,您是否必须多次匹配同一个数字? -
我同意 Grismar 的观点。也许查看 set 数据类型?