清单的产品功能

问题描述

def product(list):
    n=len(list)
    for i in range(0,n+1):
        product=1
        product=product*list[i]
        return product

给定乘积([1,2,3])时,输出为1,必须为6。

我应该在代码中进行哪些编辑才能获得正确的输出

解决方法

代码中的各种错误:

  • 循环从0到n-应该从0到n-1
  • 初始化在循环内部,因此product每次迭代都会被覆盖1。
  • return在循环内,因此它在第一次迭代时返回。
  • 使用list作为变量名也不是一个好主意

所有这些问题均已纠正:

def product(lst):
    n=len(lst)
    product=1
    for i in range(0,n):        
        product=product*lst[i]
    return product

print(product([2,3,4]))  # example
,

您可以使用下面提到的方式遍历列表,而不是使用传统方法;

def product1(list):
    product = 1
    for i in range(len(list)):
        product = product*list[i]
    return product

print(product([1,2,3])