在Python中将列表中的所有元素相乘

在Python中将列表中的所有元素相乘

在本教程中,我们将学习如何在Python中将列表的所有元素相乘。

让我们看一些示例来理解我们的目标-

Input - [2, 3, 4]
Output - 24

我们可以观察到,在输出中我们得到了列表中所有元素的乘积。

Input - [3, 'a']
Output - aaa

由于第一个元素是3,所以在输出中a被打印了三次。

我们将学习以下方法:

  1. 遍历列表
  2. 使用NumPy
  3. 使用lambda

让我们从第一个开始:

遍历列表

考虑下面给出的程序-

#creating a function
def multiply_ele(list_value1):
    #multiply the elements
    prod=1
    for i in list_value1:
        prod = prod*i
    return prod
#initializing the list
list_value1 = [10, 11, 12, 13, 14]
list_value2 = [2, 3, 4, 5, 6, 7]
#displaying the resultant values 
print("The multiplication of all the elements of list_value1 is: ", multiply_ele(list_value1))
print("The multiplication of all the elements of list_value2 is: ", multiply_ele(list_value2))

输出:

The multiplication of all the elements of list_value1 is: 240240
The multiplication of all the elements of list_value2 is: 5040

解释-

现在是时候来看一下上面程序的解释了-

  1. 在步骤1中,我们创建了一个函数,该函数将列表作为输入。
  2. 在函数定义中,我们使用了一个for循环,它从列表中取出每个元素,将其初始乘以一,并打印乘积的结果值。
  3. 在下一步中,我们初始化了列表,然后将它们传递到我们的函数中。
  4. 执行此程序后,将显示所需的输出。

在第二个程序中,我们将看到NumPy如何帮助我们实现相同的功能。

使用NumPy

以下程序演示了如何在Python中实现这一点。

#importing the NumPy module
import numpy
#initializing the list
list_value1 = [10, 11, 12, 13, 14]
list_value2 = [2, 3, 4, 5, 6, 7]
#using numpy.prod()
res_list1 = numpy.prod(list_value1)
res_list2 = numpy.prod(list_value2)
#displaying the resultant values 
print("The multiplication of all the elements of list_value1 is: ", res_list1)
print("The multiplication of all the elements of list_value2 is: ", res_list2)

输出:

The multiplication of all the elements of list_value1 is: 240240
The multiplication of all the elements of list_value2 is: 5040

说明-

让我们理解一下在上面的程序中我们做了什么。

  1. 在步骤1中,我们导入了NumPy模块。
  2. 在下一步中,我们初始化了两个列表list_value1和list_value2的值。
  3. 在此之后,我们将使用 prod() 来计算列表中元素的乘积。
  4. 执行程序后,将显示预期的输出。

最后,我们将学习如何使用lambda来乘以列表的元素。

使用lambda函数

下面的程序演示了相同的操作-

#importing the module
from functools import reduce
#initializing the list
list_value1 = [10, 11, 12, 13, 14]
list_value2 = [2, 3, 4, 5, 6, 7]
#using numpy.prod()
res_list1 = reduce((lambda a, b:a*b), list_value1)
res_list2 = reduce((lambda a, b:a*b), list_value2)
#displaying the resultant values 
print("The multiplication of all the elements of list_value1 is: ", res_list1)
print("The multiplication of all the elements of list_value2 is: ", res_list2)

输出:

The multiplication of all the elements of list_value1 is: 240240
The multiplication of all the elements of list_value2 is: 5040

解释-

让我们理解一下上面程序中发生了什么。

  1. 在步骤1中,我们从中导入了reduce
  2. 在此之后,我们初始化了两个列表, list_value1list_value2
  3. 我们使用了精确定义函数的方式,即lambda,然后提供所需功能。
  4. 执行程序后,显示所需的值。

结论

在本教程中,我们学习了在Python中对列表中的元素进行乘法的各种方法。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程