📜  Python – 矩阵中的奇数或偶数元素组合求和

📅  最后修改于: 2022-05-13 01:54:57.067000             🧑  作者: Mango

Python – 矩阵中的奇数或偶数元素组合求和

有时,在使用Python时,我们可能会遇到需要提取所有可能的元素总和的问题,从矩阵的每一行中提取一个,无论是奇数还是偶数。这是一个非常特殊的问题,但可以在某些领域有应用。让我们讨论可以执行此任务的特定方式。

方法:使用生成器表达式 + lambda + sum() + map() + all()
上述方法的组合可用于执行此任务。在此,我们使用 all() + 生成器表达式执行提取对的任务,所有奇数或偶数。求和的构造任务是使用 sum() 和 lambda 函数完成的。

# Python3 code to demonstrate working of 
# Odd or Even elements combinations Summations in Matrix
# Using generator expression + lambda + sum() + map() + all()
from itertools import product
  
# initializing list
test_list = [[1, 5, 6], [7, 2, 4], [8, 9, 3]]
  
# printing original list
print("The original list is : " + str(test_list))
  
# Odd or Even elements combinations Summations in Matrix
# Using generator expression + lambda + sum() + map() + all()
temp1 = product(*test_list)
temp2 = (sub for sub in temp1 if all(ele % 2 == 0 for ele in sub)
        or all(ele % 2 == 1 for ele in sub))
res = {sum(map(lambda idx : idx, ele)) : ele for ele in temp2}
  
# printing result 
print("The all possible sums are : " + str(res)) 
输出 :