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