我有以下列表:
t0=[['a'],
['a', 'h'],
['a', 'd', 'k', 'r', 'v'],
['a', 'b', 'c', 'k'],
['a', 'b', 'c', 's', 'u'],
['a', 'b', 'f', 't'],
['a', 'b', 'e', 'l', 'n', 'o'],
['a', 'b', 'd', 'n', 'o'],
['a', 'b', 'd', 'e', 'n', 'o'],
['a', 'b', 'd', 'e', 'm', 'n', 'o', 't']]
和
t1=[['a', 'b'], ['a', 'c'], ['a', 'd']]
对于 t1 中的每个元素,我想通过 t0 并选择其中 t1 是子集的元素,输出应如下所示:
[[["a", "b", "c", "k"], ["a", "b", "c", "s", "u"], ["a", "b", "f", "t"], ["a", "b", "e", "l", "n", "o"], ["a", "b", "d", "n", "o"], ["a", "b", "d", "e", "n", "o"], ["a", "b", "d", "e", "m", "n", "o", "t"]],
[["a", "b", "c", "k"], ["a", "b", "c", "s", "u"]],
[["a", "d", "k", "r", "v"], ["a", "b", "d", "n", "o"], ["a","b", "d", "e", "n", "o"], ["a", "b", "d", "e", "m", "n", "o","t"]]]
因此,例如,第一个元素是['a','b']
输出的第一个元素,将是 t0 的那些元素,其中['a','b']
是它们的子集。我想知道如何编写一个函数来做到这一点?
我认为这就是你要找的:
[[j for j in t0 if set(i) <= set(j)] for i in t1]
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句