我对一个尴尬的列表理解问题感到震惊,我无法解决。所以,我有两个列表,如下所示:
a=[[....],[....],[....]]
b=[[....],[....],[....]]
len(a)==len(b) including sublists i.e sublists also have the same dimension.
现在我想做一个 re.compile 它看起来像:
[re.compile(_subelement_in_a).search(_subelement_in_b).group(1)]
我想知道如何使用列表理解来实现上述目标 - 例如:
[[re.compile(str(x)).search(str(y)).group(1) for x in a] for y in b]
..但显然以上似乎不起作用,我想知道是否有人能指出我正确的方向。
编辑
我刚刚意识到 b 的子列表比 a 的子列表有更多的元素。因此,例如:
a=[[1 items],[1 items],[1 items]]
b=[[10 item], [10 item], [10 item]]
我仍然想做和我上面的问题一样的事情:
[[re.compile(str(x)).search(str(y)).group(1) for x in b] for y in a]
和输出看起来像:
c = [[b[0] in a[0] items],[b[1] in a[1] items],[b[2] in a[2] items]]
例子:
a=[["hgjkhukhkh"],["78hkugkgkug"],["ukkhukhylh"]]
b=[[r"""a(.*?)b""",r"""c(.*?)d""",r"""e(.*?)f""",r"""g(.*?)h""",r"""i(.*?)j"""],[r"""k(.*?)l""",r"""m(.*?)n""",r"""o(.*?)p""",r"""q(.*?)r"""],[r"""s(.*?)t""",r"""u(.*?)v""",r"""x(.*?)y""",r"""z(.*?)>"""]]
使用一对一映射。即检查是否:
elements of sublists of b[0] are present in sublist element of a[0]
elements of sublists of b[1] are present in sublist element of a[1]
elements of sublists of b[2] are presnet in sublist element of a[2]