众所周知,如果我们在 python 中有两个列表l1和,l2可以使用zip(l1, l2)它来创建一个元组列表。l1l2
现在,假设我们有两个函数f1和f2. 我想创建一个元组列表,其中包含元素 froml1和l2(如zip输出),这样元素 from的输出将等于f1元素 from的输出。以数学形式:l1f2l2
在我的用例中,可以假设f1和f2都是单射函数。但是,不能保证 的每个元素l1都匹配,l2反之亦然。
这是执行此操作的代码:
from itetools import product
tuples_list = [
(e1, e2)
for e1, e2 in product(l1, l2)
if f1(e1) == f2(e2)
]
我想知道是否有更好的方法(也许它已经以更快/更清洁的方式在内置库中实现)。
任何帮助将非常感激。
