Python – Elements Product 直到 K 值
其中一个问题基本上是许多复杂问题的子问题,在Python的列表中查找产品编号直到某个数字,这是常见的问题,这篇特定的文章讨论了这个特定问题的可能解决方案。
方法#1:朴素的方法
解决这个问题的最常见方法是使用循环并将直到给定数字 K 的元素的出现次数相乘。
# Python 3 code to demonstrate
# Elements Product till K value
# using naive method
# initializing list
test_list = [1, 7, 5, 6, 3, 8]
# initializing k
k = 6
# printing list
print ("The list : " + str(test_list))
# using naive method
# Elements Product till K value
res = 1
for i in test_list :
if i <= k :
res *= i
# printing the product
print ("The product till K : " + str(res))
输出 :
The list : [1, 7, 5, 6, 3, 8]
The product till K : 90
方法#2:使用列表推导
此方法以类似的方式完成此任务,但方式更简洁。即使在后台运行类似的方法,列表理解总是会降低程序中的代码行数。
# Python 3 code to demonstrate
# Elements Product till K value
# using list comprehension
# getting Product
def prod(val) :
res = 1
for ele in val:
res *= ele
return res
# initializing list
test_list = [1, 7, 5, 6, 3, 8]
# initializing k
k = 6
# printing list
print ("The list : " + str(test_list))
# using list comprehension
# Elements Product till K value
res = prod([i for i in test_list if i <= k])
# printing the intersection
print ("The product till K : " + str(res))
输出 :
The list : [1, 7, 5, 6, 3, 8]
The product till K : 90