我想找到笛卡尔元素的总和。
我的笛卡尔列表是:[ ('1','2'),('3','4') ]
我想找到1+2and的总和3+4并将其存储到另一个列表中。
x = [ ('1','2'),('3','4') ] # Your list
y = [int(a)+int(b) for a,b in x] # y is the sum you want
Run Code Online (Sandbox Code Playgroud)
第二行是一个列表推导式,它遍历列表中的每个元素。
每个元素都是一个元组。通过分配a,b给该元组,元组的第一个元素进入,a第二个元素进入b。
我们转换a并b从字符串到整数和我们添加这些整数。
(您提到了“笛卡尔列表”,但在 Python 术语中,每个元素只是一个元组。也许您的意思是两个列表的笛卡尔积通常会产生一个元组列表。)
编辑:另一种方法,基于@U10-Forward 在下面的回答,是 y = map(sum, map(lambda e: map(int, e), x))