Python程序获取给定总和的长度为K的组合
当需要获取给定总和的“K”长度组时,可以使用空列表,’product’方法,’sum’方法和’append’方法。
示例
以下是相同的演示:
from itertools import product
my_list = [45, 32, 67, 11, 88, 90, 87, 33, 45, 32]
print("列表是:")
print(my_list)
N = 77
print("N的值是")
print(N)
K = 2
print("K的值是")
print(K)
my_result = []
for sub in product(my_list, repeat = K):
if sum(sub) == N:
my_result.append(sub)
print("结果是:" )
print(my_result)
输出
The list is :
[45, 32, 67, 11, 88, 90, 87, 33, 45, 32]
The value of N is
77
The value of K is
2
The result is :
[(45, 32), (45, 32), (32, 45), (32, 45), (45, 32), (45, 32), (32, 45), (32, 45)]
解释
-
将所需的包导入环境。
-
定义一个列表并在控制台上显示。
-
定义N和K的值,并在控制台上显示。
-
定义一个空列表。
-
确定列表中元素的乘积,并检查其是否与N相等。
-
如果是,则将其附加到空列表中。
-
这将作为输出显示在控制台上。