我们可以将for循环变量中的所有元素添加吗?

2024-04-25 19:55:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图建立一个程序来计算数字的阶乘num1。问题是:如何将i中的所有数字相乘?你知道吗

这里我使用了一个for循环从5:5,4,3,2,1,0向后生成数字

但是有什么方法可以把变量的所有数字相乘吗?你知道吗

for i in range(0,5,-1):
    print(i)

结果如下:

5
4
3
2
1

有没有办法得到这些数字的乘积。我希望输出是120。你知道吗


Tags: 方法in程序forrange数字乘积print
2条回答

你的for循环是错误的。你知道吗

range(start, end, step):要获得从5到1的所有数字,需要range(5, 0, -1)

可以将结果累加到循环中的变量中。从1开始,因为那是乘法恒等式。你知道吗

retval = 1
for i in range(5, 0, -1):
    retval *= i
print(retval)

请注意,可以使用^{}轻松计算列表中项目的乘积:

>> from functools import reduce
>> numbers = list(range(5,0,-1))
[5, 4, 3, 2, 1]
>> reduce((lambda x, y: x * y), numbers)
120

相关问题 更多 >