gpt4 book ai didi

python - 比较 Python 中两个列表的每一项

转载 作者:行者123 更新时间:2023-11-28 19:33:19 26 4
gpt4 key购买 nike

例如,假设 list_1 = [a,b,c]list_2 = [m,n,o]。我想将一个列表中的每个项目与另一个列表进行比较,例如,创建一个输出列表,这样

[a == m, a == n, a == o, b == m, b == n, b == o...]

为简单起见,我使用了 == 操作,但这也可以是求和,例如

[a + m, a + n, a + o, b + m...]

我知道如何用两个循环来做到这一点,但我想知道可以使用带有 map() 或列表理解的 lambda 函数吗?我在网上搜索过,但只找到了列表项的一对一比较,例如map(lambda x,y: x + y, list_1, list_2)

最佳答案

itertools.product()可以为您生成所有组合:

import itertools
list_1 = [1,5,4]
list_2 = [2,3,4]
# using list comprehensions
comparisons = [a == b for (a, b) in itertools.product(list_1, list_2)]
sums = [a + b for (a, b) in itertools.product(list_1, list_2)]
# using map and lambda
comparisons = map(lambda (a, b): a == b, itertools.product(list_1, list_2))
sums = map(lambda (a, b): a + b, itertools.product(list_1, list_2))

关于python - 比较 Python 中两个列表的每一项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31206106/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com