我正在读一本python基础书,有一个函数我不明白它是如何工作的。为什么输出看起来像pow函数,即使没有任何**或pow操作?如果有人能帮忙就好了,因为我越来越沮丧了
循环时
summary = 1
number = 1
while number <= 6:
i = 1
p = number
while i < 5:
p *= number
i += 1
print(number, "to 5", p)
summary += p
number += 1
print("sum of fifth powers of numbers from 1 to 6 is", summary)输出
1 to 5 1
2 to 5 32
3 to 5 243
4 to 5 1024
5 to 5 3125
6 to 5 7776
sum of fifth powers of numbers from 1 to 6 is 12202发布于 2022-04-21 09:03:47
让我简单地解释一下这段代码,首先我们定义,
> summary = 1
> number = 1这里我们定义和初始化两个变量summary and number。
> while number <= 6:
> i = 1
> p = number在上面的代码中,我们启动了一个while循环,当数字变量的值小于或等于6时,这个循环将从1运行到6。我们在这里取一个变量I=1,p= number。
> while i < 5:
> p *= number
> i += 1
> print(number, "to 5", p)
> summary += p
> number += 1
> print("sum of fifth powers of numbers from 1 to 6 is", summary)现在,我们有另一个嵌套的while循环,这将对i变量的值1至4运行。正如我们在循环中看到的,变量p将与其自身相乘4次,因此我们将得到特定数的5次方。然后,我们将数字的值增加1,并在变量摘要中增加5次方的值,最后我们打印出来。
发布于 2022-02-23 06:10:22
让我举个例子来解释
当number=2 (即在找到1的5次方后)
p=2和i=1值
然后内环即
while i<5 :
p* = number //i.e p = p*number
i+= 1 //i.e i=i+1像这样,
迭代1: p= 2*2即p=4
i=1+1 i.e i=2,小于5迭代2: p= 4*2 i.e p=8
i=2+1 i.e i=3,小于5迭代3: p= 8*2 i.e p=16
i=3+1 i.e i=4,小于5迭代4: p= 16*2 i.e p=32
i=4+1 I. i=5,等于5,所以它脱离循环。
因此,2到5=32
这就是我们如何得到一个number的第五次幂
https://stackoverflow.com/questions/71174332
复制相似问题