我不太了解这部分代码

时间:2019-06-05 19:23:43

标签: python math exponent

我不明白代码是做什么的,我很高兴,但是我想了解它在做什么,即时通讯的初学者...

def raise_to_power(base_num, pow_num):
    result = 1
    for ind in range(pow_num):
        result = result * base_num
    return result

我不理解python的这部分代码

for ind in range(pow_num):
    result = result * base_num

5 个答案:

答案 0 :(得分:1)

这部分代码:

for ind in range(pow_num):
    result = result * base_num

只是一个for循环,其中ind实际上不在循环内使用。

通常会这样写一个循环:

for _ in range(pow_num):
    result = result * base_num

使用下划线表示未使用的变量。

range(pow_num)意味着循环将循环pow_num次。

计算:result = result * base_num一直乘以base_num,所以最终计算出幂,就像其他人指出的那样。

例如,调用raise_to_power(2, 3)意味着result将从1开始并依次与2相乘共3次:

result = 1
result = 2
result = 4
result = 8

答案 1 :(得分:0)

这是幂函数raise_to_power(a,b),它将为您a赋予b (a^b)幂。 它将乘以a,b倍。 raise_to_power(a,b) = a*a......*a

答案 2 :(得分:0)

理解代码的最好方法是使其具体化。

def raise_to_power(4, 3):   # base_num = 4 , power_num = 3   
result = 1                  
for ind in range(3):
    result = result * 4
return result

因此结果最初为1。然后循环运行3次(power_num次)。在该循环中,结果的值被更新。因此,结果将成为其先前值(此处为1)乘以 base_num 即4。因此result = 4

在第二次迭代中,结果再次更新为结果 = 4 x 4 = 16 在第三次也是最后一次(这里是3次迭代)中,结果变为结果 = 16 x 4 = 64

因此,总体而言,此功能正在计算 base_num

pow_num 次幂

答案 3 :(得分:0)

第一行使用两个变量base_num和pow_num声明函数raise_to_power。

下一行是起点(1)。该函数应仅返回整数(非小数的数字),而不返回浮点数(包含小数的数字)。任何数字乘以1本身都是重要的,对此代码要知道。

下一行建议一个限定语句(当发生这种情况时...执行此操作)。当您有pow_num(指数)时,在这里。 它将base_num自身乘以pow_num次。

此函数计算base_num ^ pow_num。

答案 4 :(得分:0)

好吧,它实际上所做的就是获取基数并将其置于某物的幂上,然后返回结果,例如

假设base_num为5,pow_num为3,则必须将结果设置为1才能开始,因为很明显,如果将其设置为0,因为它的乘法结果始终为0。

因此,然后它将base_num遍历并乘以等于pow_num的次数。

在这种情况下,您需要将5乘以1的结果,所以您将剩下5,这就是您想要的base_num,然后乘以5并乘以您选择的次数您的power_num为3,所以它变为5 * 5 * 5以得到125的结果,然后将其返回,以便您可以使用它进行任何操作