Python:如何在不使用任何预构建函数的情况下将列表中的所有项目相乘?

时间:2013-07-28 12:22:30

标签: python loops for-loop

我知道我应该使用for循环,但我无法弄清楚究竟是怎么回事。

def product_list(list):
    for item in list:

我搜索过这个问题,但我发现了涉及map()和lambda的回复。我怎么能用循环呢?

1 个答案:

答案 0 :(得分:4)

使用临时变量,并将每个项目乘以它:

def product_list(my_list):  # Don't use `list` as variable name
    product = 1
    for item in my_list:
        product *= item
    return product

更好的方法是将reduce()operator.mul一起使用:

import operator

def product_list(my_list):
    return reduce(operator.mul, my_list, 1)