python如何使用一个for循环实现求x几次幂?

如题所述

第1个回答  2018-05-11
#!/usr/bin/env python
def fun(x,y):
    if y == 0:
        c = 1
        return c
    elif y == 1:
        c = x
        return c
    else:
        c = 1
        for i in range(y):
            c *= x 
            print ("loop %d , %d^%d =%d  value:%d" % (i,x,i+1,x**(i+1),c))
        return c
print (fun(2,5))

追问

最后一行print里的内容没看懂 ~

本回答被提问者和网友采纳
第2个回答  2018-05-11

请问楼主是要求很多个数的次幂吗?

例如求列表a中的每个值的3次幂,如下:

a = [1,2,3,4,5]
b = []
for each in a:
    result = each^3
    print('a中每个元素的三次幂为:',result)
    b.append(result)
    print('对a中每个元素求三次幂,存放在列表b中,b结果为:',b)

希望能帮到您

追问

不是 就是求一个数的任意次幂 比如用while的
def Ab(x,n):
while n>0
x*=x
n-=1
return x
print(Ab)
类似这样可不可以用for循环实现

追答

可以的